为什么java中的char是2个字节
为什么java中的char是2个字节我们平常不是说一个字符站一个字节一个字才站2个字节的吗?...
为什么java中的char是2个字节
我们平常不是说 一个字符站一个字节 一个字才站2个字节的吗? 展开
我们平常不是说 一个字符站一个字节 一个字才站2个字节的吗? 展开
7个回答
展开全部
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',表示结束符,它的ascll码是0,这句话的意思和 char c=0 是一个意思。
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',表示结束符,它的ascll码是0,这句话的意思和 char c=0 是一个意思。
展开全部
因为Java的字符是用的Unicode编码,所以为2字节
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
JAVA里的char和c不一样
它不是ASCII码
是UNICODE码,占2个字节
1—127兼容了ASCII码
它不是ASCII码
是UNICODE码,占2个字节
1—127兼容了ASCII码
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不用钻牛角尖,对于java来说,一个字母和一个汉字都算一个char
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是UNICODE编码。。。
U编码是中文和字母都是两个字节的。。。
以后还有好多字符集的。什么GB2312,GBK,UTF-8
U编码是中文和字母都是两个字节的。。。
以后还有好多字符集的。什么GB2312,GBK,UTF-8
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询