黑马程序员技术交流社区
标题:
关于按位与 & 运算符的问题
[打印本页]
作者:
Lin枫
时间:
2014-3-19 08:46
标题:
关于按位与 & 运算符的问题
一下找不到这个方面的视频了,求帮忙解释一下按位与 & 的主要意思,谢谢
作者:
apple_victor
时间:
2014-3-19 09:24
按位运算符(6个)
总结分别如下:
& :按位与运算符
| :按位或运算符
∧ :按位异或运算符
~ :按位非运算符
<< :按位左移运算符
>> :按位右移运算符
这些运算只能用于整数类型。~ 运算符是一元运算符,只处理一个操作数,其他的都是二元运算符
& :按位与运算符合并操作数的对应位,如果两个位都是1,结果位就是1,否则,结果位为0;
例子:int x=13;
int y=6;
int z=x&y;
x 0000 1101
y 0000 0110
x&y 0000 0100
其结果为4
| :按位或运算符 如果对应位中有一个或两个位是1,按位运算符就生成1,否则生成0
例子: x 0000 1101
y 0000 0110
x&y 0000 1111
其结果为:15
(3)∧ :按位异或运算符 如果两个位是不同的,按位异或运算符就生成1,否则生成0
例子: x 0000 1101
y 0000 0110
x&y 0000 1011
其结果为:11
(4)~ :按位非运算符 就是翻转其操作数的位,将1变成0;将0变成1
(5)<< :按位左移运算符 左移运算符会向左移动指定的位数
(6)>> :按位右移运算符 右移运算符会向右移动指定的位数,但是比左移位复杂一些
作者:
盛德成
时间:
2014-3-19 11:58
& : 按位与运算符
就是按位作与运算,比如1&1=1, 1&0=0, 0&0=0 我是按照相乘运算的
此外,还有
| : 按位或运算符,比如1 | 1 = 1, 1 | 0 = 1,0 | 0 = 0 我是按照相加运算的
~ : 按位非运算符,比如~1 = 0,~0 = 1 这个很简单吧,取反就行
^ : 按位异或运算符 ,1^1=0,0^0 =0,1^0 = 1,相同为0,不相同为1
&&:这个表示两个条件同时成立,常用在条件语句中,比如if(a > 2 && b <6 )
||:这个表示两个条件一个成立就为真
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2