java中的位预算


public class Demo {
public static void main(String[] args) {
byte num1 = 3;
byte num2 = 5;
/*位预算
*num1        0011
*左移2位      1100
*右移2位      0000
*/
System.out.println("左移2位 " +(num1<<2));
System.out.println("右移2位 " +(num1>>2));
/*取相同各位
*num1       0011
*num2       0101
* 与:          0001
*/
byte num3 = (byte) (num1 & num2);
System.out.println("按位与 " +num3);
/*取相同与不同位
*num1       0011
*num2       0101
*或:          0111
*/
byte num4 = (byte) (num1 | num2);
System.out.println("按位或 " +num4);
/*取不同位上的值
*num1       0011
*num2       0101
*异或:       0110
*/
byte num5 = (byte) (num1 ^ num2);
System.out.println("按位异或 " + num5);
}
}

运行结果:

原文地址:https://www.cnblogs.com/1020182600HENG/p/5863856.html