char与byte的区别

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

通过代码示例来比较二者区别:

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

                char c = (char) -90; // 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);  

输出结果如下:

char与byte的区别_第1张图片

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

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

    System.out.println(f); 

结果:char与byte的区别_第2张图片

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

        byte g = 'a';   //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);

结果如下:

char与byte的区别_第3张图片


你可能感兴趣的:(Java)