`

java字符之——回车换行

阅读更多
前言

我们知道,任何字符在java中都是以数字存储的。
比如:

char i = 97;
System.out.print(i);

你将看到:
a

正文

在java中,回车符代表的数字是:13 ,换行符代表的数字是:10

回车:13 == \r == return
换行:10 == \n == new line

它们各代表什么意思?

引用

    在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。

    于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车”,告诉打字机把打印头定位在左边界;另一个叫做“换行”,告诉打字机把纸向下移一行。

    这就是“换行”和“回车”的来历,从它们的英语名字上也可以看出一二。

    后来,计算机发明了,这两个概念也就被般到了计算机上。那时,存储器很贵,一些科学家认为在每行结尾加两个字符太浪费了,加一个就可以。于是,就出现了分歧。

    Unix系统里,每行结尾只有“<换行>”,即“\n”;Windows系统里面,每行结尾是“<回车><换行>”,即“\r\n”;Mac系统里,每行结尾是“<回车>”。一个直接后果是,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。




引用

小技巧:

有的人在 windows 操作系统中分不清是 \r\n ,还是 \n\r
可以借助这个英文单词记忆: return,r 在 n 的前面,所以是: \r\n





例子与练习



/*
    \r回车是将光标移到一行的前面
    \n是移到下一行
*/

//我一句一句给你分析
//I代表光标位置
System.out.print("a");
//输出:
// aI

System.out.print("\n");
//输出:
// a
// I

System.out.print("b");
//输出:
// a
// bI

System.out.print("\r");
//输出:
// a
// Ib
//注意,在这里,回车将光标移动到了b前面,所以下一个输出c时b将被替换

System.out.print("c");
//输出:
// a
// cI









------------
引用:
http://bbs.csdn.net/topics/120041775
http://zhidao.baidu.com/question/7314718.html
http://www.ruanyifeng.com/blog/2006/04/post_213.html
http://feihu.me/blog/2014/end-of-line/

-






分享到:
评论

相关推荐

    excel表格内回车换行

    ### Excel表格内回车换行方法详解 #### 引言 在使用Excel处理数据或编辑文档时,我们经常需要在同一单元格内实现换行操作,以便更好地组织和展示信息。然而,与Word等文本编辑软件不同,直接在Excel中按下回车键并...

    java正则表达式 过滤特殊字符的正则表达式

    Java 正则表达式过滤特殊字符的正则表达式 Java 正则表达式是 Java 语言中的一种强大的文本处理工具,能够对字符串进行复杂的匹配、提取和替换操作。本文将详细介绍 Java 正则表达式在过滤特殊字符方面的应用。 ...

    Java过滤特殊字符的正则表达式.doc

    ### Java过滤特殊字符的正则表达式知识点解析 #### 一、正则表达式简介 正则表达式是一种用于描述字符串模式的强大工具,在文本搜索、替换等操作中有着广泛的应用。Java 中提供了丰富的 API 来支持正则表达式的使用...

    Java 基本语法(一)——数据类型

    ### Java基本语法(一)——数据类型 #### 概述 在Java编程语言中,数据类型是构建程序的基础。理解并掌握这些基本的数据类型对于学习Java至关重要。本文将详细介绍Java中的基本数据类型,包括整型、浮点型、字符...

    JAVA程序设计课件-常量.pptx

    JAVA 程序设计之常量 JAVA 程序设计中,常量是指在程序中固定不变的值,不能被改变的数据。常量包括整型常量、浮点数常量、布尔常量、字符常量等。 整型常量 整型常量是整数类型的数据,它的表现形式有四种:二...

    Java语言程序设计:第二章 Java语言语法基础.ppt

    空格、换行、制表符和回车是空白符,用于提高代码可读性。大括号`{}`用于定义代码块,分号`;`标记语句结束,逗号`,`用于区分列表中的元素,冒号`:`在某些特定语境中有特定用途,比如在switch语句中。 Java提供了八...

    MODBUS——RTU通讯协议简介

    3. LRC校验比较简单,它在ASCII协议中使用,检测了消息域中除开始的冒号及结束的回车换行号外的内容。 VC代码实现LRC校验: BYTE GetCheckCode(const char * pSendBuf, int nEnd) { BYTE byLrc = 0; char pBuf...

    计算机Java编程笔记

    8. **转义字符**:Java中的转义字符允许在字符串中插入特殊字符,如`\n`表示换行,`\t`表示制表符,`\b`表示退格,`\r`表示回车等。这些字符在文本字符串中有着特殊的用途。 9. **数据类型的声明和初始化**:Java是...

    Java学习笔记

    - **特殊字符**:`\xxx`(三位八进制表示字符)、`\uxxxx`(四位十六进制表示字符)、`\`(反斜杠字符)、`\t`(制表符)、`\r`(回车)、`\n`(换行)、`\b`(退格)、`\f`(换页)。 - **标识符与关键字**: - ...

    计算机java核心编程

    7. **转义字符**:Java中的转义字符允许你在字符串中插入特殊字符,如`\n`表示换行,`\t`表示制表符,`\b`表示退格,`\r`表示回车,`\"`和`\'`分别表示双引号和单引号,`\\`表示反斜杠。 8. **变量声明和初始化**:...

    UE中文版编辑器

    UE中文版编辑器绿色免安装版 文档大小不受限制,即使是数兆字节的...-自动换行模式转换到CR/LF's 允许用硬回车将自动换行写入文件 -CR/LF's 转换到自动换行(从文件删除 CR/LF's) -支持模板 -代码折叠、、、

    JSP应用笔记总结——我的笔记

    - ` `:回车换行标签,用于换行。 - `~6&gt;`:标题标签,`&lt;h1&gt;`到`&lt;h6&gt;`依次代表一级到六级标题,字号由大到小。 - `&lt;p&gt;`:段落标签,创建新的段落,可使用`align`属性设置对齐方式。 - `&lt;pre&gt;`:预格式化标签...

Global site tag (gtag.js) - Google Analytics