提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文
文章目录
1.next()
2.nextLine()
3.hasNext()
4.hasNextLin
1.Scanner.next()的使用:
next()方法一定要读取到有效的字符后才可以结束输入。
而对于那些输入有效字符前的空格键、Tab键、Enter键等结束符,next()不会读取。在读取到有效字符之后,next()会将空格键、Tab键、Enter键等当做结束符。
简单来说就是next()不能获取带有空格的字符串,其获取的一定是有效字符,遇到空格或者enter等键结束。
代码演示:可以看到在中间加了空格和tab键,但是只读取“鬼灭”。
2.Scanner.nextLine()的使用:
nextLine()方法的结束符只有Enter键,即会返回Enter键之前的所有的字符,其中也包括空格符和Tab符等。
代码演示:可以看到,用了nextLine()方法后,返回的是Enter之前的所有字符
3.Scanner.hasNext()的使用:
hasNext():用来判断是否还有下一个输入项。若有,则返回true;若没有,则阻塞。注意:不是返回false,而是阻塞了。
代码演示:
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入字符:");
while (scan.hasNext()){
System.out.println(scan.next());
}
}
结果演示:可以看到结果输出的时候是还可以输入字符的,即hasNext()不会返回false,只是阻塞了。
4.Scanner.hasNextLine()的使用:
hasNextLine():用来判断输入的数据中是否还有下一行,若有,返回true,若没有,则阻塞,其使用方法和hasNext()类似
注:此文章如有不足或理解错误的地方,请大家指正!