为了账号安全,请及时绑定邮箱和手机立即绑定

"Java位运算技巧:如何让代码更简洁、高效"

标签:
杂七杂八

Java 位运算

概述

位运算是一种基于二进制数的运算,广泛应用于计算机科学和数学领域。在Java中,位运算是一种高效且强大的工具,可以用于实现各种算法和数据结构。本文将详细介绍Java中的位运算及其应用。

Java中的位运算符

Java提供了以下位运算符:

  • &:与运算
  • |:或运算
  • ^:异或运算
  • ~:非运算
  • <<:左移运算
  • >>:右移运算
  • >>>:无符号右移运算

与运算(&)

与运算是一种二元运算符,用于对两个操作数执行按位与操作。只有当两个操作数的对应位都是1时,结果才为1,否则为0。

int a = 5; // 二进制表示:***
int b = 3; // 二进制表示:***
int c = a & b; // 二进制表示:***,因此c = 1

或运算(|)

或运算是一种二元运算符,用于对两个操作数执行按位或操作。当两个操作数的对应位至少有一个为1时,结果才为1,否则为0。

int a = 5; // 二进制表示:***
int b = 3; // 二进制表示:***
int c = a | b; // 二进制表示:***,因此c = 7

异或运算(^)

异或运算是一种二元运算符,用于对两个操作数执行按位异或操作。当两个操作数的对应位不同时,结果才为1,否则为0。

int a = 5; // 二进制表示:***
int b = 3; // 二进制表示:***
int c = a ^ b; // 二进制表示:***,因此c = 6

非运算(~)

非运算是一种一元运算符,用于对一个操作数执行按位非操作。对所有位取反,1变为0,0变为1。

int a = 5; // 二进制表示:***
int b = ~a; // 二进制表示:***,因此b = -6

左移运算(<<)

左移运算是一种二元运算符,用于将一个操作数向左移动指定的位数。高位丢弃,低位补0。

int a = 5; // 二进制表示:***
int b = a << 2; // 二进制表示:***,因此b = 20

右移运算(>>)

右移运算是一种二元运算符,用于将一个操作数向右移动指定的位数。低位丢弃,高位补符号位。

int a = 5; // 二进制表示:***
int b = a >> 2; // 二进制表示:***,因此b = 1

无符号右移运算(>>>)

无符号右移运算是一种二元运算符,用于将一个操作数向右移动指定的位数。低位丢弃,高位补0。

int a = 5; // 二进制表示:***
int b = a >>> 2; // 二进制表示:***,因此b = 1
点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消