使用Java和\r\n-Java之间有功能上的区别吗
我讨论了Java中不同的转义序列,想知道是否有人知道Java中\n和\r之间是否存在功能上的差异。使用Java和\r\n-Java之间有功能上的区别吗,java,Java,我讨论了Java中不同的转义序列,想知道是否有人知道Java中\n和\r之间是否存在功能上的差异。 \n表示换行符,\r表示回车符,但其中一个是否比另一个有优势 由于(电视)打字机的缘故,这些字符具有历史意义: 回车(\r):将行内的位置重置为起始位置。有时,这被用于在多个字符的顶部键入多个字符,例如在字符下面加上\u或键入重音字符(例如,在上键入“以获取ä) 换行(\n):将垂直位置增加一行(保留行内的偏移) 对于(电传)打字机,它们是两种不同的操作/指令,而开始一条新行将是两种操作/指令
\n表示换行符,\r表示回车符,但其中一个是否比另一个有优势 由于(电视)打字机的缘故,这些字符具有历史意义:
- 回车(
):将行内的位置重置为起始位置。有时,这被用于在多个字符的顶部键入多个字符,例如在字符下面加上\r
或键入重音字符(例如,在\u
上键入
以获取“
)ä
- 换行(
):将垂直位置增加一行(保留行内的偏移)\n
\r\n
)
在字符集中,您会遇到其他字符,这些字符不是书面语言的真正字符,而是通常用于电传打字机的指令(如贝尔、查询、确认、换页、垂直制表符等)
在windows系统上,您经常会遇到这种组合(\r\n
),而在其他平台上,换行符有一个新的语义,即也执行换行符(因此只使用了\n
)——这是最新的技术状态。使用\n以确保安全
而且
在现代,按下键盘上的“home”(主页)按钮,你可以看到相当于回车的效果。可能重复这个问题:是的,
\r
不会将回车移到新行。它只会将回车移到你所在行的开头。Java不在乎,你的操作系统在乎。Java will当您使用System.out.println()
时,使用相关换行终止符;当您制作包含换行符的字符串时,您希望使用System.lineSeparator()
使用相关换行终止符如果您希望可移植。理想情况下,您不应该在Java代码中编写任何\n
或\r
。