不知道有没有人疑惑过。我们一般都只是对boolean值进行与或运算,但是却很少对一个非boolean值进行这种运算、
实验如下:
int c=1&2; int d=1|2; int f=1&5; int q=1|5; Log.e("结果","c:"+c+" d:"+d+" f:"+f+" q:"+q);
运行结果:
结果: c:0 d:3 f:1 q:5
接下来:我们就看看这个结果是怎么来的:1&2 实际上是按照位进行与运算的 即0001&0010 记过就是0000 也就是0
那或运算也就是 0001|0010 结果就是0011 也就是3
这下懂了吧。