繁体   English   中英

“| =”在Java中意味着什么?

[英]What does “|=” mean in Java?

注意我的问题不是关于!=但是|=

一个用法示例在这里

我假设x |= yx = x | y相同 x = x | y但我找不到确认文件,并希望确定

谢谢

这是一个按位“或”加号,所以你的假设是正确的。

是的,这是一个包容性或任务: 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 :)

您可以阅读Java Langauge规范

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM