java如何使用nextLine()方法
<> >考虑代码:import java.util.*;
public class TestClass
{
public static void main(String[] args)
{
Scanner input= new Scanner ("34\n567");
while(input.hasNext())
{
System.out.println(input.nextLine());
}
input.close();
}
}
我得到的输出:
34
567
当我试图通过nextLine()
读取字符串时,它不应该这样读取,因为它必须仅在行分隔符处终止,并且\n
在Java中不是行分隔符
那么这是怎么发生的呢
# 1 楼答案
nextLine()是正则表达式“\r\n |[\n\r\u2028\u2029\u0085]”的基。这接受受支持的java平台格式的任何换行符,并且不限于jvm实例实际运行的平台格式。事实上,java中用于检测换行的大多数方法都是这样工作的。因此,对于换行符的定义是不正确的
# 2 楼答案
试试这个
\r\n
表示新行输出