Java位逻辑运算符

本文详细介绍了位逻辑运算符,包括按位与、按位或、按位异或和按位取反。通过实例解析了每个运算符的运算方法,如位与运算将参与计算的数转化为二进制,低位对齐,只有对应位置全为1时结果才为1;位或运算只要对应位置有一个为1,结果就为1;位异或运算则是在对应位置不同的时候结果为1;位取反运算则是将二进制数的每一位取反。通过Java代码展示了这些运算的实际应用。
摘要由CSDN通过智能技术生成

位逻辑运算符

运算符含义实例
&按位与运算6&3结果是2
|按位或运算4|5结果是5
^按位异或运算4^5结果是1
~按位取反运算~10结果是-11

位与运算符

运算方法:将参与计算的数转化成二进制,低位对齐(从右向左对齐),高位不足的补零,只有在对应的二进制都为1时的结果才为1,否则为0。

实例
将十进制21与十进制26进行与运算,21转化二进制为10101,26转化二进制为11010,低位对齐(从右向左对齐),高位不足的补零,对应的二进制都为1的结果为1,否则为零,最终的结果为十进制16,二进制数是10000.

图解
26与21的与运算

代码引用

public class dome2{
	public static void main(String[] args) {
		 System.out.println(21&26);
	}
}

位或运算符

运算方法:参与运算的数转化为二进制数,低位对齐,高位不足的补零,只要在对应的二进制中有一个为1时,则结果都为1,如果对应的二进制都为0,则结果都为零。

实例
将十进制21与十进制26进行位或运算,21转化二进制为10101,26转化二进制为11010,低位对齐(从右向左对齐),高位不足的补零,对应的二进制有一个为1的结果为1,都为零的结果为零,最终的结果为31,二进制数是11111.

图解
21与26的位或运算
代码引用

public class dome2{
	public static void main(String[] args) {
		 System.out.println(21|26);
	}
}

位异或运算符

运算方法:参与运算的数转化为二进制数,低位对齐,高位不足的补零,只要在对应的二进制相同时(同时为1或同时为0),则结果都为0,如果对应的二进制不同(有一个为0或者1),结果为1。

实例
将十进制21与十进制26进行位异或运算,21转化二进制为10101,26转化二进制为11010,低位对齐(从右向左对齐),高位不足的补零,对应的二进制相同时(同时为1或同时为0)时,则结果为0,如果对应的二进制不同(有一个不为0或者1),则结果为1,最终的结果为15,二进制数时1111.

21与26的位异或运算

代码引用

public class dome2{
	public static void main(String[] args) {
		 System.out.println(21^26);
	}
}

位取反运算

运算法则:参与运算的数转化为二进制,只对这个数二进制中的1改为0,0改为1.

实例
将十进制21与十进制26进行位取反运算,21转化二进制为10101,26转化二进制为11010。二进制中的0改为1,1给为0. 21的位取反结果十进制是-22 二进制数是10010110,26去取反结果十进制是-27,二进制数是10011011.

代码引用

public class dome2{
	public static void main(String[] args) {
		 System.out.println(~21);
		 System.out.println(~26);
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值