这个表格展示了Java中的基本运算符以及它们的描述和示例 。
类别 | 运算符 | 示例 | 描述 |
---|---|---|---|
算术运算符 | + | a + b | 加法 |
- | a - b | 减法 | |
* | a * b | 乘法 | |
/ | a / b | 除法 | |
% | a % b | 取模(求余) | |
赋值运算符 | = | c = a + b | 赋值 |
+= | c += a | 加后赋值 | |
-= | c -= a | 减后赋值 | |
*= | c *= a | 乘后赋值 | |
/= | c /= a | 除后赋值 | |
%= | c %= a | 取模后赋值 | |
++ | a++ | 自增 | |
-- | a-- | 自减 | |
关系运算符 | == | a == b | 等于 |
!= | a != b | 不等于 | |
> | a > b | 大于 | |
< | a < b | 小于 | |
>= | a >= b | 大于等于 | |
<= | a <= b | 小于等于 | |
逻辑运算符 | && | a && b | 逻辑与 |
|| | a || b | 逻辑或 | |
! | !a | 逻辑非 | |
位运算符 | & | a & b | 按位与 |
| | a | b | 按位或 | |
^ | a ^ b | 按位异或 | |
~ | ~a | 按位取反 | |
<< | a << b | 左移 | |
>> | a >> b | 右移 | |
>>> | a >>> b | 无符号右移 | |
其他运算符 | instanceof | obj instanceof ClassName | 判断对象是否为指定类的实例 |
? : | a ? b : c | 条件运算符(三元运算符) |
左移运算符
<<
:
- 将一个数的所有位向左移动指定的位数,并在右侧用0填充。
- 例如,对于二进制数
1010
,执行左移运算1010 << 2
,结果是101000
。右移运算符
>>
:
- 将一个数的所有位向右移动指定的位数,根据最高位的符号位来填充左侧的空位,如果是正数则用0填充,如果是负数则用1填充。
- 例如,对于二进制数
1010
,执行右移运算1010 >> 2
,结果是10
。无符号右移运算符
>>>
:
- 将一个数的所有位向右移动指定的位数,无论最高位是0还是1,都用0填充左侧的空位。
- 例如,对于二进制数
1010
,执行无符号右移运算1010 >>> 2
,结果是10
。这些操作符在位级别上移动二进制表示的整数,但它们的行为略有不同,尤其是在处理负数时。左移运算符在右侧填充0,右移运算符在左侧填充符号位,而无符号右移运算符在左侧填充0。