龙空技术网

“全栈2019”Java第十五章:Unicode与转义字符

人人都是程序员 179

前言:

如今大家对“javaunicode”大概比较着重,你们都想要了解一些“javaunicode”的相关资讯。那么小编同时在网络上搜集了一些对于“javaunicode””的相关内容,希望朋友们能喜欢,我们一起来学习一下吧!

难度

初级

学习时间

10分钟

适合人群

零基础

开发语言

Java

开发环境JDK v11IntelliJ IDEA v2018.31. Unicode

因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。

最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),

所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),

0 - 255被用来表示大小写英文字母、数字和一些符号,这个编码表被称为ASCII编码,

比如大写字母A的编码是65,小写字母z的编码是122。

如果要表示中文,显然一个字节是不够的,至少需要两个字节,而且还不能和ASCII编码冲突,所以,中国制定了GB2312编码,用来把中文编进去。

类似的,日文和韩文等其他语言也有这个问题。为了统一所有文字的编码,Unicode应运而生。Unicode把所有语言都统一到一套编码里,这样就不会再有乱码问题了。

Unicode通常用两个字节表示一个字符,原有的英文编码从单字节变成双字节,只需要把高字节全部填为0就可以。

2.Java中的Unicode

在Java中,char和String可以包含任何Unicode(UTF-16)字符。

如果您的编辑器和文件系统允许,您可以直接在代码中使用这些字符。如果没有,您可以使用“Unicode转义”,例如'\u4E00'(中文“一”)。

始终对char文字使用“单引号”,

对String文字使用“双引号”。

3.特殊的转义字符

Java编程语言还支持一些特殊的转义序列char和String文字:

\b(退格)\t(制表符)\n(换行)\f(换页)\r(回车)\"(双引号)\'(单引号)\\(反斜杠)

接下来,我们依次演示这几个特殊的转义字符。

\b(退格)

运行结果:

可能有的同学,有些疑惑,为什么只打印“好”呢?注意,\b是退格,不是空格,它会清除前面一个字符。例如,当打印第一个字符“大”之后,遇到“\b”,那么就清除前面一个字符,也就是“大”被清除掉了;当打印第三个字符“家”之后,再次遇到“\b”,同理清除前面一个字符,也就是“家”被清除掉了;打印最后一个字符“好”结束,所以只剩下“好”。

\t(制表符)

运行结果:

\n(换行)

运行结果:

\f(换页)

运行结果:

换页符可能大家都不太熟悉,过去连续纸张打印时,将纸空白着走到那个折线的地方也就是一张新纸的地方从新开始打印。看起来就像加了一个空格。

\r(回车)

运行结果:

咦?不是说好了,是回车吗?不应该是

这样吗?怎么会是只有一个“好”呢?这里可能大家有点误会了,我们的“\r”的意思是打印头换到本行行首。也就是打印玩“大”的时候,不换行从头开始打第二个字,也就是“家”,这时,“大”没了,“家”还在。接着,不换行从头开始打第三个字,也就是“好”,这时,“家”没了,“好”还在。所以,最后只剩下“好”。

\"(双引号)

运行结果:

\'(单引号)

运行结果:

\\(反斜杠)

运行结果:

至此,Java中Unicode与转义字符相关内容讲解先告一段落,更多内容请持续关注。

答疑

如果大家有问题或想了解更多前沿技术,请在下方留言或评论,我会为大家解答。

上一章

“全栈2019”Java第十四章:二进制、八进制、十六进制

下一章

“全栈2019”Java第十六章:下划线在数字中的意义

学习小组

加入同步学习小组,共同交流与进步。

方式一:关注头条号gorhaf,私信“Java学习小组”。方式二:关注公众号gorhaf,回复“Java学习小组”。全栈工程师学习计划

关注我们,加入“全栈工程师学习计划”。

版权声明

原创不易,未经允许不得转载!

标签: #javaunicode