基本数据类型-字符类型
【1】Java中使用单引号来表示字符常量,字符型在内存中占2个字节。
char 类型用来表示在Unicode编码表中的字符。Unicode编码被设计用来处理各种语言的文字,它占2个字节,可允许有65536个字符。
【2】转义字符:
【3】ASCII表:
【4】Unicode编码表:
https://www.cnblogs.com/csguo/p/7401874.html
代码1:
public class Test003 {
public static void main(String[] args){
//定义字符类型的变量:
char ch1 = 'a';
System.out.println(ch1);
char ch2 = 'A';
System.out.println(ch2);
char ch3 = '4';
System.out.println(ch3);
char ch4 = '中';
System.out.println(ch4);
char ch5 = '?';
System.out.println(ch5);
//java中无论:字母,数字,符号,中文都是字符类型的常量,都占用2个字节。
char ch6 = ' ';
System.out.println(ch6);
//字符类型:单引号引起来的单个字符
System.out.println("--------------------------------");
/*
转义字符:
\将后面的普通字符转换为特殊含义
*/
char ch7 = '\n';
System.out.println("aaa"+ch7+"bbb");
System.out.println("aaa\nbbb");// \n 换行
System.out.println("aaaaaaa\tbbb"); // \t 制表符
System.out.println("aaa\bbbb");//aabbb \b 向前退一格
System.out.println("aaa\rbbb");//bbb \r 将光标到本行开头 :回车
System.out.println("\"java\""); // \" 将双引号原样输出 \' 将单引号原样输出 \\ 将\原样输出
}
}
代码2:
public class Test005 {
public static void main(String[] args){
char ch1 = 'A';
System.out.println(ch1);//A
System.out.println(ch1+90);//155
System.out.println(155-ch1);//90
//char类型我们看到的样子就是它本身的字面常量,但是底层在进行计算的时候,实际上是按照一个码进行计算的。
//这个码就是ASCII
//之前说char类型是按照Unicode码表进行存储的 (Unicode兼容了ASCII码,Unicode的前128位置ASCII)
char ch2 = '中';
System.out.println(ch2);// 中
System.out.println(ch2+90);// 20103
System.out.println(20103-ch2);// 90
//转换:
int num1 = (int)ch2;
System.out.println(num1);//20013
char ch = (char)20013;
System.out.println(ch);
int num2 = '中';
char ch5 = 20013;
System.out.println(ch5);
//面试题:
char ch6 = '2'+2;
System.out.println(ch6);//'4'--->4
}
}
编码和字符集:
【1】什么是编码?
【2】通过生活案例:
【3】由权威机构形成的编码表才可以称之为:字符集
ASCII
英文字符集
用一个字节的7位表示
IOS8859-1
西欧字符集
用一个字节的8位表示
GB2312
简体中文字符集
最多使用两个字节编码
PS:中文:2个字节
GB2312兼容了ASCII中的字符:
GBK
GB2312的升级,加入了繁体字
最多使用两个字节编码
疑问:
首位如果是0:一个字节代码代表一个字符
首位如果是1:那么一个字节不够,要加上后面的字节才能完整的表示一个字符。
Unicode
国际通用字符集,融合了目前人类使用的所有字符。为每个字符分配唯一的字符码。
推出了UTF标准:
三种编码方案: UTF-8,UTF-16,UTF-32
以UTF-8为案例讲解:
中文: 田 —-》Unicode : 30000
底层存储:
UTF-8标准最多可以用6个字节表示:
我们用的最多的就是UTF-8.
解释乱码问题
用记事本选择编码方法的时候一般要选择为ANSI—-》获取当前操作系统的编码格式:GBK
还没有评论,来说两句吧...