流程控制-Scanner(1)

Scanner对象

java.util.Scanner

我们可以通过Scanner类来获取用户的输入

基本语法:

Scanner s = new Scanner(System.in);

通过Scanner类的next()与nextLine()方法获取输入的字符串,z读取前我们一般需要使用

hasNext()与hasNextLine()判断是否还有输入的数据

next()示例:

public class Demo01 {
    public static void main(String[] args) {
        //创建一个扫描器对象,用于接收键盘数据
      Scanner scanner =  new Scanner(System.in); //在IDEA中,enter键会自动带入import java.util.Scanner;

        System.out.println("使用next方式接收:");

        //判断用户有没有输入字符串
       if(scanner.hasNext()){
            String str = scanner.next();
            System.out.println("输入的内容为:"+str);

          }

        //凡是属于IO流的类,如果不关闭会一直占用资源,要养成好的习惯;
        scanner.close();
    }
}

nextLine()示例:

import java.util.Scanner;

public class Demo02 {
    public static void main(String[] args) {
         Scanner scanner = new Scanner(System.in);
         System.out.println("请输入字符:");
         if (scanner.hasNextLine()){

             String str = scanner.nextLine();
             System.out.println("输入的字符是:"+str);
         }
         scanner.close();
    }
}

注释

  1. next()

    一定要督导有效字符后才可以结束输入。

    对输入有效字符前遇到的空白,next()方法会自动将其去掉。

    只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。

    next()不能得到带有空格的字符串。

  2. nextLine()

    以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符

    可以获得空白

  3. 也可以不加判断直接输出,示例如下:

    public class Demo03 {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            System.out.println("请输入字符:");
            String str = scanner.nextLine();
            System.out.println("输入的内容是:"+str);
            scanner.close();
        }
    
    }
    
posted @ 2022-03-13 08:37  时装男人  阅读(34)  评论(0)    收藏  举报