【发布时间】:2016-12-02 08:10:59
【问题描述】:
class Tester {
public static void main(String[] arg) {
byte b=10;
b +=(b<127)?b>-128? b+=10 :0 :5;
System.out.println(b);
}
}
我知道条件已评估 true 并将控制权转移到 b+=10
所以现在逻辑上b+=b+=10; 将 b 和 10 的值相加,计算结果为 20,分配给 b。现在我无法进一步评估它。
【问题讨论】:
-
请更清楚地格式化你的代码,看看上面我是怎么做的
-
那句话是怎么回事?您在同一行中有 2 个作业...
-
首先计算左侧,即
10,然后是右侧,即(10 + 10) = 20,然后将右侧添加到左侧并存储再次在b,所以那是10+20 = 30 -
谢谢....@ErwinBolwidt