学习任务:

视频学习Java字符型

动手测试案例

Char是Java语言的一种数据类型,Char类型采用Unicode编码,使用两个字节在计算机内存中表示一个字符。

我们知道Unicode编码是十六进制数,如果我们在编写程序时用十六进制表示字符是非常不方便的,谁去记每个字符所对应的Unicode十六进制是什么,所以在Java程序中Char类型的数据可以用单引号扩起来一个字符来直接表示 ,例如:'A','B','攀','博',虽然程序中这样表示,其实Java虚拟机本身还是会以Unicode编码来表示字符,只是你看不到。

​ 既然Char类型采用Unicode编码,单引号中即可以是单个字符也可以是Unicode编码(十六进制),Unicode编码采用‘\u’加十六进制的方式表示,比如:'\u0041'、‘\u0042’,它们分别表示'A'、'B' 。

​ Unicode基本字符采用十六进制两个字节表示,一个Char类型的字符占用两个字节,所以一个Char类型的数据可以表示Unicode两个字节的基本字符,但是无法表示Unicode增补的字符,因为这些增补字符占四个字节。

​ ASCII字符也是非常有用的 ,见下表,Char类型也可以表示ASCII的字符,但是ASCII表示的字符有限,ASCII字符只用一个字节表示,所以最多可以表示256个字符,见下表:

image-20200730223319051

image-20200730223334418

另外,char类型还可以使用转义字符,如下 :

image-20210315174828435

例子:

/**
 * Java字符类型测试 
 * @author 攀博课堂(www.pbteach.com)
 *
 */
public class DataTypeDemo3 {
	public static void main(String[] args) {
		
		char a ='攀';
		char b ='博';
		char c ='课';
		char d ='堂';
		System.out.println(a);
		System.out.println(b);
		System.out.println(c);
		System.out.println(d);
		//下边报错,char只允许有一个字符
		//char e = '12';
		//注意这不是数字1,这是用单引号扩起来的字符1
		char f = '1';
		System.out.println(f);
		//使用ascii值存储字符b
		char g = 98;
		System.out.println(g);
		//转义字符
		char h = '\\';
		System.out.println(h);
	}
}

总结:Char类型用Unicode编码表示字符,在Java程序中要求用单引号扩起来,可以用单引号扩起来单个字符(例如:'A'、'B'等),也可以是转义字符(例如:'\b','''),也可以直接是Unicode编码(例如:'\u0041')。一个Char类型的数据只能表示Unicode中占用两字节的基本字符,无法表示占用四个字节的增补字符。(可以使用字符串来表示,后边学习字符串)

提问-攀博课堂
我要提问 不会就问,有效沟通
关注公众号,加入微信群交流提问。 攀博课堂官方公众号
问答列表,查看本知识点所有问题