基本数据类型-字符类型

青旅半醒 2023-09-30 13:27 87阅读 0赞

【1】Java中使用单引号来表示字符常量,字符型在内存中占2个字节。
char 类型用来表示在Unicode编码表中的字符。Unicode编码被设计用来处理各种语言的文字,它占2个字节,可允许有65536个字符。

【2】转义字符:

0f67cd438af93d4fdad7bd06f9152bdb.png

【3】ASCII表:

8ca5547081241d00d2bd2569ab07775f.png

【4】Unicode编码表:
https://www.cnblogs.com/csguo/p/7401874.html

代码1:

  1. public class Test003 {
  2. public static void main(String[] args){
  3. //定义字符类型的变量:
  4. char ch1 = 'a';
  5. System.out.println(ch1);
  6. char ch2 = 'A';
  7. System.out.println(ch2);
  8. char ch3 = '4';
  9. System.out.println(ch3);
  10. char ch4 = '中';
  11. System.out.println(ch4);
  12. char ch5 = '?';
  13. System.out.println(ch5);
  14. //java中无论:字母,数字,符号,中文都是字符类型的常量,都占用2个字节。
  15. char ch6 = ' ';
  16. System.out.println(ch6);
  17. //字符类型:单引号引起来的单个字符
  18. System.out.println("--------------------------------");
  19. /*
  20. 转义字符:
  21. \将后面的普通字符转换为特殊含义
  22. */
  23. char ch7 = '\n';
  24. System.out.println("aaa"+ch7+"bbb");
  25. System.out.println("aaa\nbbb");// \n 换行
  26. System.out.println("aaaaaaa\tbbb"); // \t 制表符
  27. System.out.println("aaa\bbbb");//aabbb \b 向前退一格
  28. System.out.println("aaa\rbbb");//bbb \r 将光标到本行开头 :回车
  29. System.out.println("\"java\""); // \" 将双引号原样输出 \' 将单引号原样输出 \\ 将\原样输出
  30. }
  31. }

代码2:

  1. public class Test005 {
  2. public static void main(String[] args){
  3. char ch1 = 'A';
  4. System.out.println(ch1);//A
  5. System.out.println(ch1+90);//155
  6. System.out.println(155-ch1);//90
  7. //char类型我们看到的样子就是它本身的字面常量,但是底层在进行计算的时候,实际上是按照一个码进行计算的。
  8. //这个码就是ASCII
  9. //之前说char类型是按照Unicode码表进行存储的 (Unicode兼容了ASCII码,Unicode的前128位置ASCII)
  10. char ch2 = '中';
  11. System.out.println(ch2);// 中
  12. System.out.println(ch2+90);// 20103
  13. System.out.println(20103-ch2);// 90
  14. //转换:
  15. int num1 = (int)ch2;
  16. System.out.println(num1);//20013
  17. char ch = (char)20013;
  18. System.out.println(ch);
  19. int num2 = '中';
  20. char ch5 = 20013;
  21. System.out.println(ch5);
  22. //面试题:
  23. char ch6 = '2'+2;
  24. System.out.println(ch6);//'4'--->4
  25. }
  26. }

编码和字符集:

【1】什么是编码?

1a55ce8661452edfbe8458a3bd2d0a79.png

【2】通过生活案例:

57d608c50a18993da62621282462e070.png

【3】由权威机构形成的编码表才可以称之为:字符集

ASCII
英文字符集

用一个字节的7位表示

IOS8859-1
西欧字符集

用一个字节的8位表示

GB2312
简体中文字符集

最多使用两个字节编码

PS:中文:2个字节

GB2312兼容了ASCII中的字符:

GBK
GB2312的升级,加入了繁体字

最多使用两个字节编码

疑问:

bfb99bec71937310644d11b91ba19d39.png

首位如果是0:一个字节代码代表一个字符

首位如果是1:那么一个字节不够,要加上后面的字节才能完整的表示一个字符。

Unicode
国际通用字符集,融合了目前人类使用的所有字符。为每个字符分配唯一的字符码。

推出了UTF标准:

三种编码方案: UTF-8,UTF-16,UTF-32

以UTF-8为案例讲解:

中文: 田 —-》Unicode : 30000

c2f0f6c427f5b2e163c64db22c8db818.png

34d5c776737ff14c3a1d097ca1a56de1.png

底层存储:

b262006a8355c4ccfb4b0d9e389e0778.png

UTF-8标准最多可以用6个字节表示:

67d7ece6d580ac123ddf0f18a367b29d.png

我们用的最多的就是UTF-8.

解释乱码问题

40511298f1c646dc670116c045faf5c9.png

用记事本选择编码方法的时候一般要选择为ANSI—-》获取当前操作系统的编码格式:GBK

发表评论

表情:
评论列表 (有 0 条评论,87人围观)

还没有评论,来说两句吧...

相关阅读

    相关 基本数据类型

    什么是数据类型? 我们人类可以很容易的分清数字与字符的区别,但是计算机并不能呀,计算机虽然很强大,但从某种角度上看又很傻,除非你明确的告诉它,1是数字,“汉”是文字

    相关 基本数据类型

    Python支持多种数据类型 在计算机内部,可把任何数据都看成一个对象,而变量就是在程序中用来指向这些数据对象的,对变量赋值就是把数据和变量给关联起来   整数  

    相关 基本数据类型

    什么是数据?为何要有多种类型的数据 数据就是变量的值比如变量name=liuqi,age=67,old\_boy=43 那么它一共有几种类型呢? 一共有5种 int\整