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 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦