关于 Scanner 的 nextLine( ) 方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于 Scanner 的 nextLine( ) 方法相关的知识,希望对你有一定的参考价值。
先看以下代码:
Scanner read = new Scanner(System.in);
int a = read.nextInt();
String str = read.nextLine();
System.out.println(a);
System.out.println(str);
试着输入:12、回车
发现程序终止了,直接输出了12,不能输入 str 了:
原因是 read() 不会跳过回车符,nextLine() 会读回车符,输完12后输入的那个回车符直接就被读到 str 中了,这时 str 是一个回车符并被输出,所以有个空行。
解决办法:在第三行之前调一次 nextLine(),读掉上一次的回车符。
可以利用这一特性,用 readLine() 读回车符,实现类似“按回车继续”等的操作。
以上是关于关于 Scanner 的 nextLine( ) 方法的主要内容,如果未能解决你的问题,请参考以下文章
Scanner.next()与Scanner.nextLine()的区别
从 Socket 使用 InputStream 时的 Scanner.nextLine() 块