美文网首页
Java中经典byte相加的问题

Java中经典byte相加的问题

作者: 小林记 | 来源:发表于2018-06-17 16:08 被阅读328次

    代码:

    byte b1 = 1 , b2 = 2 , b3 ,b6;
    final byte b4 = 4, b5 = 5;
    b6 = b4 + b5;
    b3 = b1 + b2;
    //System.out.print(b3 + b6);
    

    问题:

    分析代码中的第 3,4行.

    解析:

    1. 第三行没问题.

      final修饰的是常量,b6在编译阶段就已经发生的了变化,

    2. 第四行不正确.

      b1,b2是byte类型,Java计算时候会先将他们提升为 int 类型,再进行计算.正确的表达式应该是 : b3 = (byte)(b1+b2)

      是编译阶段错误

    知识点 :

    Java中byte,short,char在进行计算时候都会提升为int类型

    相关文章

      网友评论

          本文标题:Java中经典byte相加的问题

          本文链接:https://www.haomeiwen.com/subject/nrpweftx.html