byte与char的区别

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

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

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

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);  

结果为:class

?
1
-1
127
-128

 

二、char能够表中文字符,byte不能够,如:数据类型

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

 

结果为:二进制

中
国
45

 

三、char、byte、int对于英文字符,能够相互转化,如:d3

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
相关文章
相关标签/搜索