位运算是直接对二进制进行计算
左移 <<
右移 >>
先把整数换成四个8bit 0000-0000 0000-0000 0000-0000 0000-0000
这个二进制左右移动,移除来的那头用0补齐
规律:
6<<3意思就是 6乘以2的3次方
6>>3意思就是6除以2的3次方
& 与运算
| 或运算
^ 异或运算
先把十进制整数转成二进制,两个数上下对应
6&3 意思就是,对应位置一致,都是1就得1,其他的都是0
6|3 意思就是,对应位置一致,只要有1就是1,都是0才得0
6^3 意思就是,对应位置一致,上下相同的得0,不同的得1
110
011&与运算
010 =2
110
011 |或运算
111 =7
110
011^异或
101 =5
这些位运算可以用来做加密功能
public class VariableDemo { /** * @param args */ static void main(String[] args) { System.out.println(6<<3);//输出48 System.out.println(6>>3);输出 0 System.out.println(6&3);输出 2 System.out.println(6|3);输出 7 System.out.println(6^3);输出 5 } }
原文链接:/javase/996727.html