A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© taoshan 中级黑马   /  2016-5-8 11:43  /  616 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

byte b1 = 3; byte b2 = 4; byte b3 = b1 + b2;错误的原因?
1.byte short char 进行运算时会自动类型提升为int 2个int类型相结合也是int类型
2.b1 和b2 是2个变量,变量存储的值是变化的,在编译的时候无法判断里面的值,相加可能会超出byte的取值范围

3 个回复

倒序浏览
不是相加是赋值的时候
回复 使用道具 举报
public static void main(String[] args) {
                byte b1 = 3;
                byte b2 = 4;
                byte b3 = (byte)(b1 + b2);

                System.out.println("b3 = " + b3);
        }
这样就可以了
回复 使用道具 举报
强制类型转换
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马