Java核心技术卷I基础知识3.3.3 char类型
3.3.3 char类型
char类型原本用于表示单个字符。不过,现在情况已经有所变化。如今,有些Unicode字符可以用一个char值描述,另外一些Unicode字符则需要两个char值。有关的详细信息请阅读下一节。
char类型的字面量值要用单引号括起来。例如:'A'是编码值为65所对应的字符常量。它与"A"不同,"A"是包含一个字符A的字符串。char类型的值可以表示为十六进制值,其范围从\u0000到\Uffff。例如:\u2122表示注册符号(TM),\u03C0表示希腊字母π。
除了转义序列\u之外,还有一些用于表示特殊字符的转义序列,请参看表3-3。所有这些转义序列都可以出现在加引号的字符字面量或字符串中。例如,'\u2122'或"Hello\n"。转义序列\u还可以出现在加引号的字符常量或字符串之外(而其他所有转义序列不可以)。例如:
就完全符合语法规则,\u005B和\u005D是[和]的编码。
表3-3 特殊字符的转义序列
转义序列 名称 Unicode值 转义序列 名称 Unicode值
\b 退格 \u0008 \” 双引号 \u0022
\t 制表 \u0009 \’ 单引号 \u0027
\n 换行 \u000a \\ 反斜杠 \u005c
\r 回车 \u000d
警告:Unicode转义序列会在解析代码之前得到处理。例如,"\u0022+\u0022"并不是一个由引号(U+0022)包围加号构成的字符串。实际上,\u0022会在解析之前转换为",这会得到""+"",也就是一个空串。
更隐秘地,一定要当心注释中的\u。注释
会产生一个语法错误,因为读程序时\u00A0会替换为一个换行符。类似地,下面这个注释
也会产生一个语法错误,因为\u后面并未跟着4个十六进制数。
相关文章
- Java要抛弃祖宗的基业,Java程序员危险了!
- 十大 Java 语言特性
- JVM 三色标记算法,原来是这么回事!
- 聊聊 Spring 事务控制策略以及 @Transactional 失效问题避坑
- 写给 Java 程序员的前端 Promise 教程
- 写给 Java 程序员的前端 Promise 教程,你学会了吗?
- Java 中为什么不全部使用 Static 方法?
- Java 池化技术你了解多少?
- Java 服务 Docker 容器化优秀实践
- Spring Boot + EasyExcel导入导出,简直太好用了!
- 我们一起聊聊 Java 内存泄漏
- CentOS 下安装 Docker 极简教程
- JDK 19 功能集冻结:Java 19 只有七个新特性
- 关于 CMS 垃圾回收器,你真的懂了吗?
- 为什么会有这么多编程语言?
- 改善Java代码的八个建议
- 接口流量突增,如何做好性能优化?
- Java 以编程方式创建JAR文件
- POJO、Java Bean是如何定义的
- Spring 的 Bean 明明设置了 Scope 为 Prototype,为什么还是只能获取到单例对象?