【发布时间】:2010-08-06 04:05:51
【问题描述】:
【问题讨论】:
标签: java bit-manipulation bitwise-operators
【问题讨论】:
标签: java bit-manipulation bitwise-operators
这是一个按位“或”加赋值,所以你的假设是完全正确的。
【讨论】:
是的,它是按位包含或赋值:http://www.cafeaulait.org/course/week2/03.html
【讨论】:
更准确地说,x |= y 实际上计算为 x = x | (y)。
这是一个有趣的例子,说明为什么这很重要。
int c = 2;
c %= c++ * ++c;
这里有趣的结果是它会写成
c = c % (c++ * ++c);
Java 规范告诉我们,JVM 会首先看到初始的 c 并将其存储,在它之前的任何内容都不会对其产生影响,因此 c++ & ++c 实际上不会影响计算的结果。它总是 c = 2 % 等于 2 :)
【讨论】:
【讨论】: