继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

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

慕标5832272
关注TA
已关注
手记 1071
粉丝 228
获赞 996

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
打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP