字符型通常用于表示单个的字符,字符型必须使用单引号(')括起来。Java语言使用16位的Unicode字符集作为编码方式,而Unicode被设计成支持世界上所有书面语言的字符,包括中文字符,因此Java程序支持各种语言的字符。
什么是字符集:
严格来说,计算机无法保存电影、音乐、图片、字符......计算机只能保存二进制码。因此电影、音乐、图片、字符都需要先转换为二进制码,然后才能保存。因此平时会听到avi、mov等各种电影格式;mp3、wma等各种音乐格式;gif、png等各种图片格式;之所以需要这些格式,就是因为计算机需要先将电影、音乐、图片等转换为二进制码,然后才能保存。对于保存字符就简单多了,直接把需要保存的字符编号,当计算机要保存某个字符时,只要将该字符的编号转换为二进制码,然后保存起来即可。所谓字符集,就是给所有字符的编号组成总和。早期美国人给英文字符、数字、标点符号等字符进行了编号,他们认为所有字符顶多100多个,只要一个字节(8位,支持256个字符编号)就可为所有字符编号--这就是ASC||字符集。后来,亚洲国家纷纷为本国文字进行编号,即制定本国的字符集,但这些字符集并不兼容。于是美国人又为世界上所有书面语言的字符进行了统一编号,这次他们用了两个字节(16位,支持65536个字符编号),这就是Unicode字符集。
字符型值有如下三种表现形式:
>直接通过单个字符来指定字符型值,例如 'A','9','0'等。
>通过转义字符表示特殊字符型,例如'\n','\t'等。
>直接使用Unicode值来表示字符型,格式是'\uXXXX',其中XXXX代表一个十六进制的整数。
字符型值也可以采用16进制编码方式来表示,范围是'\u0000'-'\uFFFF',一共可以表示65536个字符,其中前256个('\u0000'-'\u00FF')字符和ASC||码中的字符完全吻合。
由于计算机底层保存字符时,实际是保存该字符对应的编号,因此char类型的值也可以直接作为整型值来使用,它相当于一个16位的无符号整数,表数范围0-65535。
char类型的变量、值完全可以参与加、减、乘、除等数学运算,也可以比较大小,实际上都是用该字符对应的编码参与运算。