目录
逻辑运算符
逻辑运算符就是表示逻辑关系的运算符。下表列出了逻辑运算符的基本运算,假设布尔变量A为真,变量B为假。
逻辑运算符表
操作符 | 描述 | 例子 |
&& | 当且仅当两个操作数都为真,条件才为真。 | (A && B)为假。 |
|| | 如果任何两个操作数任何一个为真,条件为真。 | (A || B)为真。 |
! | 如果条件为true,则逻辑非运算符将得到false。 | !(A && B)为真。 |
逻辑运算符举例
public class Test_luoji {
public static void main(String args[]) {
boolean a = true; boolean b = false;
System.out.println("a && b = " + (a&&b));
System.out.println("a || b = " + (a||b) );
System.out.println("!(a && b) = " + !(a && b));
}
}
位运算符
逻位运算符主要用于整数的二进制位运算。可以把它们分为移位运算和按位运算。
(1)移位运算:
位右移运算(>>)
>> 用于整数的二进制位右移运算,在移位操作的过程中,符号位不变,其他位右移。
位左移运算(<<)
<< 用于整数的二进制位左移运算,在移位操作的过程中,左边的位移出(舍弃),右边位补0。例如,将整数a进行左移3位的操作: a<<3
不带符号右移运算(>>>)
>>> 用于整数的二进制位右移运算,在移位操作的过程中,右边位移出,左边位补0。
(2)按位运算
&(按位与)
在按位与操作过程中,如果对应两位的值均为1,则该位的运算结果为1,否则为0。
|(按位或)
在按位或操作过程中,如果对应两位的值只要有一个为1,则该位的运算结果为1,否则为0。
^(按位异或)
在按位异或操作过程中,如果对应两位的值相异,则该位的运算结果为1,否则为0。
~(按位取反)
~ 是一元运算符,用于单个整数的二进制按位取反操作(即将二进制位的1变为0,0变为1)。