定义

全部的ASCII码都能够用“\”加数字(通常是8进制数字)来表示。而C中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符,由于后面的字字符,都不是它本来的ASCII字符意思了。

常见转移字符的含义表:

很多字符都有对应的转义字符序列。包含单引號(\')、换行(\n)、制表符(\t)和反斜线(\\)。你能够在字符字面常量和字符串字面常量中使用转义字符序列。

执行机制



实际上。你能够通过使用被称为八进制转义字符的特殊类型的转义字符序列,将不论什么ASCII字符置于一个字符串字面常量或一个字符字面常量中。可是最好是尽可能地使用普通的转义字符序列。

普通的转义字符序列和八进制转义字符都比Unicode转义字符要好得多,由于与Unicode转义字符不同,转义字符序列是在程序被解析为各种符号之后被处理的。 

ASCII是字符集的最小公共特性集。它仅仅有128个字符,可是Unicode有超过65,000个字符。一个Unicode转义字符能够被用来在仅仅使用ASCII字符的程序中插入一个Unicode字符。

一个Unicode转义字符精确地等价于它所表示的字符。

Unicode转义字符被设计为用于在程序猿须要插入一个不能用源文件字符集表示的字符的情况。它们主要用于将非ASCII字符置于标识符、字符串字面常量、字符字面常量以及凝视中。偶尔地,Unicode转义字符也被用来在看起来颇为相似的数个字符中明白地标识当中的某一个,从而添加程序的清晰度。

总之,在字符串和字符字面常量中要优先选择的是转义字符序列。而不是Unicode转义字符。Unicode转义字符可能会由于它们在编译序列中 被处理得过早而引起混乱。

不要使用Unicode转义字符来表示ASCII字符。

在字符串和字符字面常量中,应该使用转义字符序列;对于除这些字面常量之 外的情况,应该直接将ASCII字符插入到源文件里。

释于生活

转义字符,来源于生活。生活中关于转义字符的解释是常态、easy理解的。以下是结合生活,关于部分转义字符的理解。感觉蛮不错的解释:

/r 回车 

其含义是倒回到本行的开头,类似于生活中的倒车计算机有西方人发明。计算机的专家们更是热爱生活。当中 回车 一词,更是符合其原本含义,生活中的倒车。

比如,James早上将车开出车库后停下。发现今天是周日。定好的去跑步,那么James就须要再将车倒回车库原处。

切换到计算机环境中,回车表示光标回到本行的行头。就是说本来光标在不断地向前输出数据(车在向前开出),可是。遇到了/ r(想起了跑步的事情)。这时就须要将此时的光标倒回到本行的开头(车回到车库的原处)。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

/b 退格 

其含义是退一格。后面覆盖前一位。若后面没有。则光标在前一位闪烁:

(原)程序输出要求:12345678

(程序变化后)输出要求:123/b45678/b

(此时)输出:1245678

/t 制表符

其含义是将光标跳到下一个制表位 含义(一个制表位放8个字符):如果此时图上为输出界面(就是我们的屏幕)。事实上屏幕上也是有表的。仅仅只是我们看不到而已(是计算机的底层设计时建立的),每个位置输出一个字符,而一个制表位能够放8个字符,

如果我们输出的为:12345678ABCDEFG12345678ABCDEFG

后增加制表符变为:

123/t45678ABCDEFG/t1234567/t8ABCDEFG

则最后输出为:

123(5个空位置)(下一个制表符)45678ABC (下一个制表符)DEFG(4个空位置)(下一个制表符)1234567(1个空位置)(下一个制表符)8ABCDEFG

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

学习小结

关于JAVA中的转移字符,感觉学习起来就是一头雾水。经过业余时间的一通消化,感觉理解起来也是蛮简单的。

生活中,无处不在的场景,仅仅要肯去发掘。绝对是能够用到不论什么的职业的,生活中充满了知识和联系。计算机嘛,也是源于生活的,仅仅要多加联系生活,相信能够更好地理解!

[JAVA · 0基础]:3.转义字符的更多相关文章

  1. [JAVA · 0基础]:19.容器类

    概述 容器 就是存放数据的一个集合 (java提供了一个接口专门去约束我们容器的实现类) watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L ...

  2. [JAVA · 0基础]:16.经常使用类

    基本类型包装 为什么须要包装类? JAVA并非纯面向对象的语言.Java语言是一个面向对象的语言.可是Java中的基本数据类型却是不面向对象的.可是我们在实际使用中常常须要将基本数据转化成对象,便于操 ...

  3. [JAVA · 0基础]:11.终结者-final

    关于finalkeyword的总结,是非常easy学习和掌握的,大致分为用final修饰的符号常量.类.方法.属性四部分.而这四部分的内容也是我们必须掌握的,非常有用.在项目中常常来利用finalke ...

  4. _00017 Kafka的体系结构介绍以及Kafka入门案例(0基础案例+Java API的使用)

    博文作者:妳那伊抹微笑 itdog8 地址链接 : http://www.itdog8.com(个人链接) 博客地址:http://blog.csdn.net/u012185296 博文标题:_000 ...

  5. JAVA思维导图系列:多线程0基础

    感觉自己JAVA基础太差了,又一次看一遍,已思维导图的方式记录下来 多线程0基础 进程 独立性 拥有独立资源 独立的地址 无授权其它进程无法訪问 动态性 与程序的差别是:进程是动态的指令集合,而程序是 ...

  6. 0基础的小白怎么学习Java?

    自身零基础,那么我们应该先学好Java,首先我们来了解下Java的特性: Java语言是简单的 Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java.另一方面,Jav ...

  7. Java 入门课程视频实战-0基础 上线了,猜拳游戏,ATM实战,欢迎围观

    Java 入门课程视频实战-0基础 已经上传完了.欢迎小伙伴们过来围观 直接进入: http://edu.csdn.net/course/detail/196 课程文件夹例如以下: 1 初识Java  ...

  8. Java多线程系列--“基础篇”11之 生产消费者问题

    概要 本章,会对“生产/消费者问题”进行讨论.涉及到的内容包括:1. 生产/消费者模型2. 生产/消费者实现 转载请注明出处:http://www.cnblogs.com/skywang12345/p ...

  9. Java多线程系列--“基础篇”04之 synchronized关键字

    概要 本章,会对synchronized关键字进行介绍.涉及到的内容包括:1. synchronized原理2. synchronized基本规则3. synchronized方法 和 synchro ...

随机推荐

  1. jQuery 事件流的概念

    jQuery  事件流的概念 什么是事件流 DOM事件流 1. 事件捕获阶段; 2.处于目标阶段; 3.事件冒泡阶段; <!DOCTYPE html> <html lang=&quo ...

  2. 小学生都能学会的python(编码 and 字符串)

    小学生都能学会的python(编码 and 字符串) 一,编码 最早的计算机编码是ASCII. 有英文+数字+特殊字符 8bit => 1byte 没有中文, 后面的编码必须兼容ASCII    ...

  3. 一种神奇的双向循环链表C语言实现

    最近在看ucore操作系统的实验指导.里面提要一个双向循环链表的数据结构,挺有意思的. 其实这个数据结构本身并不复杂.在普通链表的基础上加一个前向指针,我们就得到了双向链表,再把头尾节点连起来就是双向 ...

  4. 洛谷——P1352 没有上司的舞会

    https://www.luogu.org/problem/show?pid=1352#sub 题目描述 某大学有N个职员,编号为1~N.他们之间有从属关系,也就是说他们的关系就像一棵以校长为根的树, ...

  5. spring boot和maven的约定大于配置体现在哪些方面

    spring boot和maven的约定大于配置体现在哪些方面? 两者都遵从了约定大于配置的路线 约定优于配置体现点: 1.maven的目录文件结构 1)默认有resources文件夹,存放资源配置文 ...

  6. ValidForm的使用

    1.引入css 请查看下载文件中的style.css,把里面Validform必须部分拷贝到你的css中(文件中这个凝视 "/*==========下面部分是Validform必须的==== ...

  7. yqj2065经典语录

    在上课时.博客中和<编程导论(Java)>书中,yqj2065说过一些简短的话.列举一些玩玩. 假设您在我的博客中看见好玩的,最好还是推荐一下. 持续加入中... 1. "噢姐姐 ...

  8. 面向程序猿的设计模式 ——GoF《设计模式》读书总结(壹)抽象工厂&amp;生成器

    第一部分:创建型模式 创建型模式抽象了实例化过程. 它们帮助一个系统独立于怎样创建.组合和表示它的那些对象.(把一些小的对象组装成大对象,这个工作由专门的类对象来做) 一个类创建型模式使用继承改变被实 ...

  9. 使用wpa_supplicant连接WIFI

    让树莓派可以开机就连接制定的wifi, 可以通过wpa_supplicant来实现. 在 /etc/wpa_supplicant 下写一个配置文件: wpa_supplicant.conf 内容如下: ...

  10. awesome python 中文版 相见恨晚!(pythonNB的第三方资源库)

    Awesome Python中文版来啦! 原文链接:Python 资源大全 内容包括:Web框架.网络爬虫.网络内容提取.模板引擎.数据库.数据可视化.图片处理.文本处理.自然语言处理.机器学习.日志 ...