Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 当我们可以使用“\n”时,“println”为什么存在?_Java_Println - Fatal编程技术网

Java 当我们可以使用“\n”时,“println”为什么存在?

Java 当我们可以使用“\n”时,“println”为什么存在?,java,println,Java,Println,我是java新手,想知道为什么会有人使用System.out.println来更改行,而不是将\n放在括号内。这两者之间有什么区别吗 咨询重点矿山: [PrintStream.println]通过写入行分隔符字符串终止当前行。行分隔符字符串由系统属性line.separator定义,不一定是单个换行符“\n” 例如,Windows使用\r\n作为默认换行符。例如,不同操作系统中的新行是不同的 Unix based systems=> "\n" windows => "\r\n"

我是java新手,想知道为什么会有人使用System.out.println来更改行,而不是将\n放在括号内。这两者之间有什么区别吗

咨询重点矿山:

[PrintStream.println]通过写入行分隔符字符串终止当前行。行分隔符字符串由系统属性line.separator定义,不一定是单个换行符“\n”


例如,Windows使用\r\n作为默认换行符。例如,不同操作系统中的新行是不同的

Unix based systems=> "\n" 
windows => "\r\n" 
and some other machines used just a "\r". (Commodore, Apple II, Mac OS prior to OS X, etc..)
如果你不使用println,你必须自己管理它们,或者像这样通过系统属性来获取它们

System.getProperty("line.separator");

如注释中所示,简单的附加\n在所有环境(例如Windows)中都不起作用。如果要手动附加正确的行尾,则需要使用

 System.getProperty("line.separator");
或者,在Java 7中:

 System.lineSeparator()

另请参见这两行代码的来源。

除此之外,添加换行符通常是您想要的,因此自动包含换行符很好,而无需将其添加到所有字符串中。