与用户交互 Scanner
Scanner对象
-
Java提供了一个工具类,可以用以获取用户的输入。java.util.Scanner 是Java5的新特征
-
基本语法
Scanner s = new Scanner(System.in);
-
通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有数据输入
- next()
- 一定要读取到有效字符后才可结束输入
- 对输入有效字符之前遇到的空白,会自动被去掉
- 只有输入有效字符后才将其后面的空白作为结束符或分隔符
- 不能完整地接收到带空格的字符串
- nextLine()
- 以Enter为结束符也就是说nextLine方法返回的是输入回车之前的所有字符
- 可以获得空白
- next()
-
还可以通过nextInt,nextDouble等方法获得各种信息:
Scanner scanner = new Scanner(System.in); // 从键盘接收数据 int i = 0; float f = 0.01f; System.out.println("请输入整数:"); if(scanner.hasNextInt()){ i = scanner.nextInt(); System.out.println("整数数据:"+ i); } else{ System.out.println("输入不为整数"); } System.out.println("请输入小数:"); if(scanner.hasNextFloat()){ f = scanner.nextFloat(); System.out.println("小数数据:"+ f); } else{ System.out.println("输入不为小数"); } scanner.close();