|
|
|
JAVA程序员必读:基础篇(3)语言基础
|
|
编译:ZSC/太平洋网络学院
|
|
|
语言基础
3.2.3 移位和逻辑运算符
移位运算符通过对第一个运算对象左移或者右移位来对数据执行位操作。下面的这个表总结了JAVA编程语言中有效的移位运算符。
运算符
|
用法
|
操作
|
>>
|
op1 >> op2
|
将op1右移op2个位
|
<<
|
op1 << op2
|
将op1左移op2个位
|
>>>
|
op1 >>> op2
|
将op1右移op2个位(无符号的)
|
每一个运算符移动左边的运算对象的位数都是由右边的运算符给出的。这个移位的方向取决于运算符本身。比如,下面的语句是实现将整数13右移1位的目的:
13 >> 1;
13的二进制为1101.右移一位的结果为110,即为十进制的6.左边的位用零来填充。下面的表给出了JAVA编程语言提供的四种运算符来对它们的运算对象执行按位操作:
运算符
|
用法
|
操作
|
&
|
op1 & op2
|
按位与
|
|
|
op1 | op2
|
按位或
|
^
|
op1 ^ op2
|
按位异或
|
~
|
~op2
|
按位求补
|
当它的运算对象为数字的时候,&运算符为每一个运算对象的每位执行按位AND功能。AND在运算对象的相应位为1的时候结果才为1,其余情况结果都为0,如下表所示:
op1
|
op2
|
结果
|
0
|
0
|
0
|
0
|
1
|
0
|
1
|
0
|
0
|
1
|
1
|
1
|
[上一页]
[下一页]
|
|
|