char与byte的区别

很多初学者(包括我,已经学了一年多java了)肯会对char和byte这两种数据类型有所疑惑,相互混淆,今天特地查了好多资料,对byte和char两种数据类型进行了总结和比较,先将结果与大家分享:


        byte 是字节数据类型 ,是有符号型的,占1 个字节;大小范围为-128—127 。char 是字符数据类型 ,是无符号型的,占2字节(Unicode码 );大小范围 是065535 ;char是一个16位二进制的Unicode字符,JAVAchar来表示一个字符 。


        下面用实例来比较一下二者的区别:

1、Char是无符号型的,可以表示一个整数,不能表示负数;而byte是有符号型的,可以表示-128—127 的数;如:

char c = (char) -3; // char不能识别负数,必须强制转换否则报错,即使强制转换之后,也无法识别
System.out.println(c);
byte d1 = 1;
byte d2 = -1;
byte d3 = 127; // 如果是byte d3 = 128;会报错
byte d4 = -128; // 如果是byte d4 = -129;会报错
System.out.println(d1);
System.out.println(d2);
System.out.println(d3);
System.out.println(d4);

结果为:

?
1
-1
127
-128


2、char可以表中文字符,byte不可以,如:

char e1 = '中', e2 = '国';
byte f= (byte) '中';	//必须强制转换否则报错
System.out.println(e1);
System.out.println(e2);
System.out.println(f);

结果为:



45


3、char、byteint对于英文字符,可以相互转化,如:

byte g = 'b';	//b对应ASCII是98
char h = (char) g;
char i = 85;	//U对应ASCII是85
int j = 'h';	//h对应ASCII是104
System.out.println(g);
System.out.println(h);
System.out.println(i);
System.out.println(j);
结果为:
98
b
U
104



欢迎加入"Java梦之队" 学习群:226159645




关注【SunLogging】 
这里写图片描述 
长按或扫码二维码,在手机端阅读更多内容


阅读更多

扫码向博主提问

luoweifu

设计模式、编程思想、职场生活
去开通我的Chat快问
版权声明:本文为博主原创文章,未经博主允许不得用于任何商业用途,转载请注明出处。 https://blog.csdn.net/luoweifu/article/details/7770588
文章标签: byte java c
个人分类: java
所属专栏: java伴我一路走来
上一篇JAVA的MD5加密与解密
下一篇常用邮箱的服务器名
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭