第一篇 黑马程序员-逻辑运算符

------- android培训java培训、期待与您交流! ----------

一.
&:与,其中一个为假就为假。
|:或,两个为假才为假。
^:异或,和|有点不一样,当true^true=false,true^false=true,false^true=true,false^false=false,
总结:两边相同结果是假,两边不同结果是真。
位运算符:
<<:左移,3<<2=12,即3*2的2次方=12, 3<<1=6,即3*2的一次方=6.
>>:右移:跟左移相反,右移后补什么由最高位的数值而定,如果最高位是0话,就补0如果是1的话
就补1.
>>>:无符号右移,右移后,都是用0补空位.
二.
&:与运算,比如6&3等于几呢?6用二进制表示是110,3用二进制表示是011,由于1&0或0与1都是假,即0,所以
把他们二进制作&运算后的二进制值为010,即为2.
|:或运算,比如6|5等于几呢?6用二进制表示是110,5用二进制表示是101,由于1|0或0|1都是真,所以
把他们二进制作|运算后的二进制值为111,即为7。
^:异或运算,比如6^5,6用二进制表示是110,5用二进制表示是101,异或由于是两边相同即为假,即1^1=0,
0^0=0,而两边不相同即为真,即1^0=1,0^1=1,所以把他们的二进制作异或运算后的值为011.即为3.
一个数异或同一个数两次,结果还是那个数。
~:反码,其实就是取反,比如要求6的反码,先把6用二进制表示就是 000....000110,然后将其取反就是
111....111001,将它减个一再取反,1用二进制表示就是111....111001,再将它们相减得到000....000111
将它转成十进制数就是-7.

------- android培训java培训、期待与您交流! ----------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值