1. <<(向左位移) 针对二进制,转换成二进制后向左移动2位,后面用0补齐
10的二进制1010
0000 0000 0000 0000 0000 0000 0000 1010 ---32位
0000 0000 0000 0000 0000 0000 0010 1000
System.out.println(10 << 2);//1010 =40
2. >>(向右位移) 针对二进制,转换成二进制后向右移动2位,操作数移除右边界的位被屏蔽 正数高位
补0 负数补1
10的二进制1010
0000 0000 0000 0000 0000 0000 0000 1010
System.out.println(10 >> 2);//10=2
3. >>>(不带符号右移) 针对二进制,转换成二进制后向右移动2位,操作数移除右边界的位被屏蔽
正数高位 补0 负数补0
异或运算^ 针对二进制,相同的为0,不同的为1
0010 --2
0011 --3
0001 --1
4. &(与运算) 针对二进制,00的0 11的1 10 的0
0010--2
0011--3
0010--2
标签:右移,10,0000,运算,二进制,--,异或,移除 From: https://blog.51cto.com/u_10956218/6155244