按位与&: 只要对应的二个二进位都为1时,结果位就为1
按位或|:只要对应的二个二进位有一个为1时,结果位就为1
按位异或^:0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0(同为0,异为1)
按位非:取反操作符
逻辑操作符 与(&&) 或(||) 非(!) 只可用于布尔值
boolean 不能转换为其它类型 只能赋予 true false 值 并测试其为真还是假 而不能对布尔值相加,或对其进行其它任何操作
//: object/Bit.java package object;
import static net.util.Print.*; public class Bit{
public static void main(String[] args){
int n1=3;
int n2=4;
print("n1 = " + Integer.toBinaryString(n1));
print("n2 = " + Integer.toBinaryString(n2));
print("n1&n2 = " + Integer.toBinaryString(n1&n2));//按位与
print("n1|n2 = " + Integer.toBinaryString(n1|n2));//按位或
print("n1^n2 = " + Integer.toBinaryString(n1^n2));//按位异或
print("~n2 = " + Integer.toBinaryString(~n2));//按位非
}
}/* output:
n1 = 11
n2 = 100
n1&n2 = 0
n1|n2 = 111
n1^n2 = 111
~n2 = 11111111111111111111111111111011
*///~