历史
我们先回到漫漫历史中了解"回车"(Carriage Return)和"换行"(Line Feed)这两个概念的来历和区别。
在计算机还没有出现之前,有一种电传打字机。这种打字机每秒钟可以打10个字符。但是,它有一个问题,就是打完一行换行的时候要用去0.2秒也就是打印两个字符的时间。假若,在这0.2秒时间里又有新的字符传过来,那么这个字符将丢失。于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做"回车"(Carriage Return),告诉打字机把打印头定位在左边界;另一个叫做"换行"(Line Feed),告诉打字机把纸向下移一行。这就是“换行”和“回车”的来历;其实,我们从它们的英语名字上也略知一二。
回车和换行的表示方式
Linux中用\n表示回车+换行
Windows中用\r\n表示回车+换行
Mac中用\r表示回车+换行
获取回车和换行
在Java中可使用如下代码获取与系统的回车与换行:
System.getProperty("line.separator")
示例如下:
public class Test {
public static void main(String[] args) {
String property = System.getProperty("line.separator");
System.out.print("-----");
System.out.println(property);
System.out.print("-----");
}
}