用java编程有一段时间了,没遇到过奇怪的表达方式
int kk = 2 | 3;
'|' 是什么意思 在这个表达式中是什么意思?谷歌似乎很难。
我在源码中遇到了
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
为什么我们需要使用它?
它是按位或- 如果一个或两个输入在该位置设置了一个位,则将设置每个结果位。2 是二进制的 10,3 是 11,所以结果也是 3。
| 是位运算符。在您的情况下, 2|3 将产生 3 因为 2 是 10 而 3 是 11. 10 | 11 = 11
.
你可以看看http://vipan.com/htdocs/bitwisehelp.html 我认为它们是关于移位运算符的非常好的教程