• 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


         


  • 相关阅读:
    洛谷 P1278 单词游戏 【状压dp】
    洛谷 P1854 花店橱窗布置 【dp】
    洛谷 P2258 子矩阵
    洛谷 P3102 [USACO14FEB]秘密代码Secret Code 【区间dp】
    洛谷U14200 Changing 题解 【杨辉三角】
    洛谷P3933 Chtholly Nota Seniorious 【二分 + 贪心 + 矩阵旋转】
    P3932 浮游大陆的68号岛 【线段树】
    洛谷P1273 有线电视网 【树上分组背包】
    NOI2013 矩阵游戏 【数论】
    洛谷P1268 树的重量 【构造 + 枚举】
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4076022.html
Copyright © 2020-2023  润新知