Scanner类的一些总结

Scanner类用来捕获用户输入信息

下面是创建Scanner对象的基本语法 Scanner s = new Scanner(System.in);

scanner类最常用的两个方法next()与nextLine()方法获取输入的字符串。

Scanner 类的 next() 与 nextLine()的区别:next()是以获取空格键结束nextLine()是以获取Enter键结束;

next()与nextLine()是用来捕获字符串的,在读取前我们一般需要 使用 hasNext 与 hasNextLine 判断是否还有输入的数据。

  • hasNext()方法会判断接下来是否有非空字符.如果有,则返回true,否则返回false
  • hasNextLine() 方法会根据行匹配模式去判断接下来是否有一行(包括空行),如果有,则返回true,否则返回false

如果如果要捕获int 或 float 类型可以使用:

  • nextInt()
  • nextFloat()

在进行输入之前最好先使用 hasNextXxx() 方法进行验证,再使用 nextXxx() 来读取,这样可以防止用户输入的数据类型与捕获 的 数据类型不匹配而导致发生异常。

例:捕获int类型时

if (scan.hasNextInt()) {	// 判断输入的是否是整数
            int i = scan.nextInt();	// 接收整数
            System.out.println("整数数据:" + i);
        } else {
            // 输入错误的信息
            System.out.println("输入的不是整数!");
        }

例:捕获float类型时

if (scan.hasNextFloat()) {	// 判断输入的是否是小数
            f = scan.nextFloat();	// 接收小数
            System.out.println("小数数据:" + f);
        } else {
            // 输入错误的信息
            System.out.println("输入的不是小数!");
        }
posted @ 2021-01-22 21:42  一程山水一年华^_^  阅读(126)  评论(0)    收藏  举报
TOP 底部 /*显示代码块行号*/