首页 > 文章列表 > java有几种位运算

java有几种位运算

java 位运算
279 2022-08-06

1、异或:^

若两个输入位的某一个是 1,另一个不是 1,那么 "^" 运算后结果才是 1

// 3: 0011
// 5: 0101
// ^的规则是:若两个输入位的某一个是 1,另一个不是 1,那么 "^" 运算后结果才是 1
// ---0110->6
System.out.println("3^5运算的结果是 :" + (3 ^ 5));

2、与:&

若两个输入位都是 1,则"&" 运算后结果是 1,否则结果是 0

// 3: 0011
// 5: 0101
// &的规则是:若两个输入位都是 1,则"&" 运算后结果是 1,否则结果是 0
// ---0001->1
System.out.println("3&5运算的结果是 :" + (3 & 5));

或:|

 若两个输入位里至少有一个是 1,则"|" 运算后结果是 1,都是0的情况下结果是 0

// 3: 0011
// 5: 0101
// |的规则是:若两个输入位里至少有一个是 1,则"|" 运算后结果是 1,都是0的情况下结果是 0
// ---0111->7
System.out.println("3|5运算的结果是 :" + (3 | 5));

非:~

非的逻辑比较简单,0->1,1->0

//  3: 0011
// ~3: 1100-> -4
// 其中,第一位表示正负值
System.out.println("~3运算的结果是:" + ~3);

本教程操作环境:windows7系统、java10版,DELL G3电脑。