【Java】Int类型逻辑运算符的详细描述---含代码

int型是4字节32位
&,|,~,^,<<,>>,>>>

"&" 按位与,计算时将 十进制 转为 二进制 再进行计算,同位置为1,则结果为1,其余情况皆为0
3:		00000000	00000000	00000000	00000011
6:		00000000	00000000	00000000	00000110
3&6:	00000000	00000000	00000000	00000010

"|" 按位或,计算时将 十进制 转为 二进制 再进行计算,同位置为0的结果为0,其余情况皆为1
3:		00000000	00000000	00000000	00000011
6:		00000000	00000000	00000000	00000110
3|6:	00000000	00000000	00000000	00000111

"~"	按位取反,将二进制下所有为0的数换位1,为1的都换位0
3:		00000000	00000000	00000000	00000011
~3:	11111111	11111111	11111111	11111100

"^"	按位异或,只有0和1的时候为1,0和0为0,1和1也为0
3:		00000000	00000000	00000000	00000011
6:		00000000	00000000	00000000	00000110
3^6:	00000000	00000000	00000000	00000101

"<<" 左移运算,a<<b,将a转为二进制后左移b为,低位补0
3:					00000000	00000000	00000000	00000011
3<<1:			 0	00000000	00000000	00000000	00000110
3<<6:		000000	00000000	00000000	00000000	11000000

">>" 右移运算,a>>b,将a转为二进制后向右移b位,高位补0,负数时高位补1
3:		00000000	00000000	00000000	00000011
3>>6	00000000	00000000	00000000	00000000	000011
3>>1	00000000	00000000	00000000	00000001	1

">>>"无符号右移运算,a>>>b,将a转为二进制,向右移b位,低位去掉,高位不管是0还是1都补0
-4:	11111111 	11111111    11111111    11111100
-4>>>4:	00001111	11111111	11111111	11111111	1100


二进制下负数的表示:这个数的反码加1
5:			00000000	00000000	00000000	00000101
5的反码:	11111111	11111111	11111111	11111010
-5:		11111111	11111111	11111111	11111011


代码:
	//10:        00000000  00000000    00000000    00001010
	//10>>1:     00000000  00000000    00000000    00000101
	/*int oldCapacity = 6;
	int newCapacity = oldCapacity + (oldCapacity >> 1);
	System.out.println(newCapacity);*/
	System.out.println(3&6);
	System.out.println(3|6);
	//3:         00000000  00000000    00000000    00000011
	//~3:       11111111  11111111    11111111    11111100
	//4:        00000000  00000000    00000000    00000100
	//4反码:   11111111  11111111    11111111    11111011
	//-4:       11111111  11111111    11111111    11111100
	System.out.println(~3);

	System.out.println(3^6);

	System.out.println(3>>6);

	System.out.println(3>>1);

	System.out.println(-4>>>4);
  • 以上是关于int类型的各种运算符的详细讲解
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值