Java中Scanner的使用和hasNextXXX()的用法

输出

基本语法

System.out.println(msg); //输出一个字符串,自带换行
System.out.print(msg); //输出一个字符串,不带换行
System.out.printf(msg); //格式化输出,和C语言相同

例如:

public class SannerDemo {
    
    
    public static void main(String[] args) {
    
    
        System.out.println("hello world!");
        System.out.print("hello world!");

        String str = "hello world";
        System.out.printf("%s\n",str);
    }
}

在这里插入图片描述
快捷键推荐:在这里,如果使用的是 IDEA的话,可以输入sout然后回车,会自动输出 System.out.println();

输入

使用Scanner读取

首先需要导入==import java.util.Scanner;==的包,然后 Scanner sc =new Scanner(System.in);,这段代码的主要作用是,从键盘中输入中读取数据。
然后读取数据:
next()、nextInt()和nextLIne()的区别;


import java.util.Scanner;

public class SannerDemo {
    
    
    public static void main(String[] args) {
    
    
        Scanner sc = new Scanner(System.in);
        int i = sc.nextInt();
        System.out.println(i);   //读取int型的数据

        //读取一行数据
        String s1 = sc.nextLine();
        System.out.println(s1);

        //读取字符串
        String s2 = sc.next();
        System.out.println(s2);
    }

nextInt():

 		int i = sc.nextInt();
        System.out.println(i);   //读取int型的数据

在这里插入图片描述
在这里插入图片描述
可以读取数字,但是遇到空格,只能读取空格前的数字。

next():

//        //读取字符串
        String s2 = sc.next();
        System.out.println(s2);

在这里插入图片描述
可以读取字符串,但是遇到空格,只能读取空格前的数字。

nextLine():

  		 //读取一行数据
        String s1 = sc.nextLine();
        System.out.println(s1);

在这里插入图片描述
可以读取字符串,并读取这一行 ,但是遇到回车结束。

注意:

next()和nextLine()不可以同时使用:
例如:

        //读取字符串
        String s2 = sc.next();
        System.out.println(s2);
        //读取一行数据
        String s1 = sc.nextLine();
        System.out.println(s1);

在这里插入图片描述
这样只会输出一行,这是因为nextLine()读取了回车,然后结束。
next()遇到空客会结束。
在这里插入图片描述

使用Scanner循环读取N个数字/字符串

hasNextInt()的使用

import java.util.Scanner;

public class SannerDemo {
    
    
    public static void main(String[] args) {
    
    
        Scanner sc =new Scanner(System.in);
        
        while (sc.hasNextInt()){
    
    
            int i = sc.nextInt();//输入数字i
            System.out.println(i);//打印数字i
        }
        
    }

在这里插入图片描述
当程序开始之后,会一直循环输入并打印一个数字,知道Ctrl+d结束程序
在这里sc.hasNextInt()的结果是一个boolean的类型,当结果为false是结束。
注意:
Ctrl+d用来结束循环输入多个数据
同理:
在这里插入图片描述
这些方法都可以用于循环数据输入。

猜你喜欢

转载自blog.csdn.net/weixin_52142731/article/details/111870960
今日推荐