Java基础|char 的初始化及占位字节和类型转换

本文详细介绍了Java中char类型的特性,包括其初始化方法、占用字节数及与Unicode编码的关系。探讨了Java为何选择16位Unicode编码而非8位ASCII码,并解释了char类型的不同初始化方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1 char 的初始化姿势?

2 char占几个字节?

3 类型转换关系图


1 char 的初始化姿势?

char 是 Java 中的保留字,与别的语言不同的是,char 在 Java 中是16 位的,因为 Java 用的是 Unicode。不过 8 位的 ASCII 码包含在 Unicode 中,是从0~127。
Java 中使用Unicode的原因是,Java 的 Applet 允许全世界范围内运行,那它就需要一种可以表述人类所有语言的字符编码。Unicode。但是English,Spanish,German, French根本不需要这么表示,所以它们其实采用ASCII码会更高效。这中间就存在一个权衡问题。
因为 char 是16位的,采取的 Unicode 的编码方式,所以char就有以下的初始化方式:
  char c='c'; //字符,可以是汉字,因为是 Unicode 编码
  char c= 十进制数,八进制数,十六进制数等等; //可以用整数赋值
  char c='\u数字'; //用字符的编码值来初始化,如:char='\0',表示结束符,它的 ASCII 码是0,这句话的意思和 char c=0 是一个意思。
 

2 char 占几个字节?

1:“字节”是byte,“位”是bit ;1 byte = 8 bit ;

(8bit=1byte、1024 byte=1KB、1024KB=1MB、1024MB=1GB)
2:char 在 Java 中是2个字节。
Java 采用 unicode,2个字节(16位)来表示一个字符,也就是说一个char类型的变量可以存储一个汉字。(当然兼容ACSII码)
而ASCII码,是1个字节(8位)来表示一个字符。
    通常gbk/gb2312编码是2个字节,utf-8编码是3个字节。

3 类型转换关系图

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不甩锅的码农

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值