知识的学习往往是枯燥乏味的,但破茧成蝶前都会经历一番难忘的岁月。
为实现程序与人的交互,Java给我们提供了一个工具类。Java.util.Scanner是JDK1.5的新特性,我们可以通过Scanner类来获取用户的输入。
基本语法如下:
Scanner s = new Scanner(System.in);
通过Scanner的next()和nextLine()方法获取输入的字符串,在读取前,我们需要使用hasNext()和hasNextLine()方法来判断是否还有输入的数据。
next() :
1、一定要读取到有效字符后才会结束输入;
2、对输入有效字符之前遇到的空白,next()会将其自动去掉;
3、只有输入有效字符后,next()才会将字符后输入的空白作为分隔符或者结束符;
4、next()不能得到带有空格的完整字符串。
nextLine():
1、以Enter键为结束符,nextLine()返回的是按回车键之前输入的全部字符;
2、可以获取到空白。
测试1:输入Hello world ,输出结果为Hello。
//创建一个扫描器对象,用于接收键盘数
Scanner s = new Scanner(System.in);
if (s.hasNext()){//判断用户有没有输入字符串
String str = s.next();//等待键盘输入
System.out.println(str);
}
//凡是属于IO流的类,如果不关闭会一直占用资源。养成用完就关闭的习惯
s.close();
测试2:输入Hello world ,输出结果为Hello world。
//创建一个扫描器对象,用于接收键盘数
Scanner s = new Scanner(System.in);
if (s.hasNextLine()){//判断用户有没有输入字符串
String str = s.nextLine();//等待键盘输入
System.out.println(str);
}
//凡是属于IO流的类,如果不关闭会一直占用资源。养成用完就关闭的习惯
s.close();
测试3:输入7,打印结果为7;输入6.5,打印结果为 输入的数据不为int类型。
//创建一个扫描器对象,用于接收键盘数
Scanner s = new Scanner(System.in);
if (s.hasNextInt()){//判断用户有没有输入字符串
String str = s.nextLine();//等待键盘输入
System.out.println(str);
}else {
System.out.println("输入的数据不为int类型");
}
//凡是属于IO流的类,如果不关闭会一直占用资源。养成用完就关闭的习惯
s.close();