一:Scanner这个类最实用的地方表现在获取控制台输入
java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入。首先要导入包 import java.util.Scanner;
Scanner类的创建对象: Scanner S=new Scanner(System.in);
二 Scanner类中常用的方法next()和nextLine()的区别:
next():作为字符串输入的方法,自动屏蔽掉输入的分隔符,如空格、Tab键、回车键,直到遇到有效地字符输入后,则将这些分隔符作为结束标志;
nextLine();则是将从开始运行所输入的所有的字符,包括分隔符,均作为控制台输入,只有在遇到enter回车键时,才结束输入,并将所有的内容作为输入内容传给Scanner;
首先咱们尝试next这种方式接收
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
// 从键盘接收数据
// next方式接收字符串
System.out.println("next方式接收:");
// 判断是否还有输入
if (scan.hasNext()) {
String str1 = scan.next();
System.out.println("输入的数据为:" + str1);
}
scan.close();
}
结果为:
很明显,“晴晴”两字并未输出出来,原因就是刚刚讲过得啦~~~【next():作为字符串输入的方法,自动屏蔽掉输入的分隔符,如空格、Tab键、回车键,直到遇到有效地字符输入后,则将这些分隔符作为结束标志;】
接下来咱们尝试nextLine这种方式接收
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
// 从键盘接收数据
// next方式接收字符串
System.out.println("nextLine方式接收:");
// 判断是否还有输入
if (scan.hasNext()) {
String str1 = scan.nextLine();
System.out.println("输入的数据为:" + str1);
}
scan.close();
}
结果为:
看到这里,二者的区别就很明显了叭,通俗的说,就是接收特殊字符的时候是否被识别为结束符。接收整数和浮点数是一个道理啦~