String s = System.lineSeparator();
System.out.println(s);
我尝试从变量s
获取文字,但为什么变量s
中没有文字?
答案 0 :(得分:1)
在您的系统上尝试以下代码
for(byte b : System.lineSeparator().getBytes()){
System.out.println(b);
}
它会打印
10
OR
13
10
在这里,我打印出来自System.lineSeparator()
的ascii代码。
\n
的ascii代码为10,\r
的ascii代码为13。
在System.lineSeparator()
在UNIX系统上,它返回" \ n&#34 ;;在Microsoft Windows系统上,它返回" \ r \ n"。
所以关键是你没有看到任何输出,因为如果你试图打印\r
或\n
因为\r
代表换行而\n
代表下一个线。你无法在控制台上看到它们。但是他们会在弦乐中产生影响。
答案 1 :(得分:0)
System.lineSeparator();
返回一个字符串,系统通常用它来分隔行,例如标准输入的输入。
这通常是一个新行字符,因此当您在程序中打印时,您不会“按原样”查看它。
尝试使用:
String s = System.lineSeparator();
System.out.println("~~" + s + "~~");
这有助于您区分输出。你应该看到这样的东西:
~~
~~
此输出将指示新行字符正在分隔打印语句中的~~
个字符。
希望这有帮助!
答案 2 :(得分:0)
System.lineSeperator()将主要返回" \ r \ n",所以当你输出sysout时,它会打印一个新行。