Java中Addition Assignment操作符的处理不一致

时间:2016-04-23 17:11:24

标签: java

使用简单的赋值操作时,我看到了不一致的行为。

class TestInt {
    public static void main(String args[]) {
        byte a = 1, b = 1;
        b = b + a;
    }
}

原因 TestInt.java:4:错误:不兼容的类型:从int到byte的可能有损转换                 b = b + a;                       ^ 1错误

虽然这编译并且工作正常

class TestInt {
    public static void main(String args[]) {
        byte a = 1, b = 1;
        b += a;
    }
}

我明白为什么第一段代码可能会失败,我只是想弄清楚为什么2来自C编程世界之间存在差异。

0 个答案:

没有答案