Scanner

Scanner的基本语法为

Scanner s = new Scanner(System.in);

这是一个工具类语法,我们可以通过Scanner类来获取用户的输入,java.util.Scanner是Java5 的新特征

通过Scanner类的next()与nextLine()方法获取输入的字符串 ,在读取前我们需要使用hasNext()与hasNextline()判断是否还有输入的数据

next方式与nextline方式的区别如下:

Scanner


简单来说:

  • next方式以空格为结束符号

  • nextline方式以回车为结束符号


import java.util.Scanner;

public class TextScanner01 {
    public static void main(String[] args) {
         //创建一个扫描器对象,用于接收键盘数据。
        Scanner scanner = new Scanner(System.in);
        System.out.println("使用next方式接收:");//先输出使用next方式接收这么一句话
        //判断用户有没有字符串的输入字符串
        if (scanner.hasNext()){//if里面就是scanner扫描是否有输出
      //然后用String定一个变量str = scanner后的.next就是使用next方式接收用户输入的字符串
            String str = scanner.next();
            System.out.println("输入的内容为:"+str);//最后先输出输入的内容为,再加上变量str使用next方式接收到的字符串
        }
        //凡是属于IO流的,用完之后一定要关上,因为如果不关上就会一直挂在这里不结束占用内存。
        scanner.close();

    }
}

这里输出空格后的内容就会失去

import java.util.Scanner;

public class TextScanner02 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        
        System.out.println("使用nextline方式:");
        
        if(scanner.hasNext()){
            
        String str = scanner.nextLine();
            
        System.out.println("用户输入的内容为:"+str);
            
        scanner.close();
        }
    }
}

这里输出的内容是以回车为结束的可以输出huwenbiao 小聪明,而上面的只能输出huwenbiao 小聪明不能输出

import java.util.Scanner;

public class TextScanner02 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("使用nextline方式:");
        if(scanner.hasNext()){
            String str = scanner.nextLine();
            System.out.println("用户输入的内容为:"+str);
           scanner.close();
        }
    }
}

当然不使用if语句也可以直接输出内容

任何IO语句使用完成后一定要结束

上一篇:顺序结构


下一篇:ThinkPad_win10安装Ubuntu16.04双系统grub-install/dev/nvmeOn,完整安装过程