【发布时间】:2010-12-25 09:31:07
【问题描述】:
我正在阅读 Effective Java,它使用%n 作为换行符无处不在。我在 Java 程序中使用 \n 相当成功。
哪个是“正确”的? \n 有什么问题?为什么 Java 改变了这个 C 约定?
【问题讨论】:
-
只是猜测,但是:跨平台支持。不同的系统对换行使用不同的字符,例如\n 与 \r\n。 C# 有 Environment.NewLine 用于相同目的。
-
Java 在 System 中也有一些东西,但 %n 在 printf 中更容易。
-
为什么 java 改变了这个 c 约定 == +1, :)
-
不是更改,而是添加/增强。 \n 仍然意味着 \n
-
(未来读者请注意:C 已经将
\n自动转换为文本格式的平台特定换行符,参见this,Java 没有)