java位运算符的基础总结
发布日期:2021-04-30 21:01:43 浏览次数:111 分类:精选文章

本文共 959 字,大约阅读时间需要 3 分钟。

位运算符

技术小贴士

位运算符是直接对二进制进行运算的工具,它们在编程中非常实用。以下是常见的位运算符及其功能说明。

常用位运算符及其示例

1. 左移运算符 <<

  • 定义:左移运算符将一个数的二进制位向左移动指定的位置,等价于乘以2的相应次幂。
  • 示例:3左移2位(3 << 2)= 3 × 2² = 12

2. 右移运算符 >>

  • 定义:右移运算符将一个数的二进制位向右移动指定的位置,等价于除以2的相应次幂。
  • 示例:3右移2位(3 >> 2)= 3 / 2² = 1

3. 无符号右移运算符 >>>

  • 定义:无符号右移运算符在移位时会填充0到移出的位置上。
  • 示例:3无符号右移1位(3 >>> 1)= 3 / 2 = 1

4. 与运算符 &

  • 定义:与运算符将两个数对应二进制位取逻辑与。
  • 示例:6与3(6 & 3)= 2

5. 或运算符 |

  • 定义:或运算符将两个数对应二进制位取逻辑或。
  • 示例:6或3(6 | 3)= 7

6. 异或运算符 ^

  • 定义:异或运算符将两个数对应二进制位取逻辑异或。
  • 示例:6异或3(6 ^ 3)= 5

7. 反码运算符 ~

  • 定义:反码运算符将二进制数取反。
  • 示例:~6(二进制:110110)= -7

技术案例:数组中出现一次的数

在编程中,常需要处理数组中唯一的一个数。以下是一个巧妙的方法:

public static void main(String[] args) {    int[] ace = {5, 3, 3, 5, 2, 6, 9, 9, 6};    int t = 0;    for (int i = 0; i < ace.length; i++) {        t ^= ace[i];    }    System.out.println(t); // 输出:2}

原理:将所有数异或一次,结果即为唯一的数。因为异或具有双重性质,一个数异或两次等于0。通过遍历数组,所有重复的数会被异或两次,最终剩下的数即为唯一的数。

参考资料

技术小技巧

  • 与运算:用于测试两个数是否为真值。
  • 或运算:用于逻辑或运算,常用于条件判断。
  • 异或运算:用于消除重复项,找出唯一数。

希望以上内容能帮助您更好地理解位运算符的应用。如有疑问,欢迎在评论区交流!

上一篇:JVM学习笔记004:内存模型JMM
下一篇:string类insert函数

发表评论

最新留言

关注你微信了!
[***.104.42.241]2026年05月24日 16时51分31秒