char foo='中'?
Java语言中,中文字符所占的字节数取决于字符的编码方式,一般情况下,采用ISO8859-1编码方式时,一个中文字符与一个英文字符一样只占1个字节;采用GB2312或GBK编码方式时,一个中文字符占2个字节;而采用UTF-8编码方式时,一个中文字符会占3个字节
在java中,char和byte都是基础数据类型,其中的byte和C++中的char类型是一样的,8位,1个字节,-128-127。但是,char类型,是16位,2个字节, '\u0000'-'\uFFFF'。
为什么java里的char是2个字节?
因为java内部都是用unicode的,所以java其实是支持中文变量名的,比如string 世界 = "我的世界";这样的语句是可以通过的。
还有各种编码 ascii 最基本的一种编码方式,一字节8位可以表示从0到127的数,ascii就是将简单的数字字母和符号与0到127的8位二进制建立一个映射 gb2312 简体中文的编码方式 BIG5 繁体中文的编码方式 gbk 亚洲所有文字的编码方式 unicode 所有国家文字的编码方式,万国码 utf-8 可变长度的万国码
网友评论