为什么4&7结果是4
4 的二进制值是 100,7 的二进制值是 111(实际上 Java 在存储两个数到内存时会自动在有效值 100 和 111 之前补 29
为什么4&7结果是4
4 的二进制值是 100,7 的二进制值是 111(实际上 Java 在存储两个数到内存时会自动在有效值 100 和 111 之前补 29 个零来达到整数类型的 4 byte 大小,此处为了方便展示就不补全前面的一串零了),
& 是将两数进行位与位的 and 操作(0 & 1 = 0,1 & 1 = 1),所以操作步骤就是
4: 1 0 0 & & & 7: 1 1 1 ---------- = 1 0 0
可见最后得出的结果是一个