Java 常用符号和运算符总结
Java 中的符号分为以下几类:算术运算符、比较运算符、逻辑运算符、位运算符、赋值运算符、特殊符号。下面对各类符号进行总结。
1. 算术运算符
符号 | 名称 | 用法示例 | 说明 |
---|---|---|---|
+ | 加法 | a + b | 数字相加或字符串拼接。 |
- | 减法 | a - b | 两数相减。 |
* | 乘法 | a * b | 两数相乘。 |
/ | 除法 | a / b | 两数相除,结果为商(整数或小数,依类型决定)。 |
% | 取模(求余数) | a % b | 结果为余数,例如 10 % 3 结果为 1 。 |
++ | 自增 | a++ 或 ++a | a++ 是先使用后自增,++a 是先自增后使用。 |
-- | 自减 | a-- 或 --a | a-- 是先使用后自减,--a 是先自减后使用。 |
2. 比较运算符
符号 | 名称 | 用法示例 | 说明 |
---|---|---|---|
== | 等于 | a == b | 判断两值是否相等。 |
!= | 不等于 | a != b | 判断两值是否不相等。 |
> | 大于 | a > b | 判断左操作数是否大于右操作数。 |
< | 小于 | a < b | 判断左操作数是否小于右操作数。 |
>= | 大于等于 | a >= b | 判断左操作数是否大于或等于右操作数。 |
<= | 小于等于 | a <= b | 判断左操作数是否小于或等于右操作数。 |
3. 逻辑运算符
符号 | 名称 | 用法示例 | 说明 |
---|---|---|---|
&& | 逻辑与(AND) | a && b | 两个条件都为真时结果为真,否则为假。 |
` | ` | 逻辑或(OR) | |
! | 逻辑非(NOT) | !a | 对条件取反,例如 a = true ,则 !a = false 。 |
4. 位运算符
符号 | 名称 | 用法示例 | 说明 |
---|---|---|---|
& | 按位与 | a & b | 按位与操作,两个位都为 1 时结果为 1 ,否则为 0 。 |
` | ` | 按位或 | `a |
^ | 按位异或 | a ^ b | 按位异或操作,两个位不同时结果为 1 ,否则为 0 。 |
~ | 按位取反 | ~a | 取反操作,将每个位的 0 和 1 翻转。 |
<< | 左移 | a << 2 | 将 a 的二进制位左移两位,右边补 0 。 |
>> | 右移(带符号) | a >> 2 | 将 a 的二进制位右移两位,左边补符号位。 |
>>> | 无符号右移 | a >>> 2 | 将 a 的二进制位右移两位,左边补 0 。 |
5. 赋值运算符
符号 | 名称 | 用法示例 | 说明 |
---|---|---|---|
= | 赋值 | a = b | 将右操作数赋值给左操作数。 |
+= | 加法赋值 | a += b | 等价于 a = a + b 。 |
-= | 减法赋值 | a -= b | 等价于 a = a - b 。 |
*= | 乘法赋值 | a *= b | 等价于 a = a * b 。 |
/= | 除法赋值 | a /= b | 等价于 a = a / b 。 |
%= | 模赋值 | a %= b | 等价于 a = a % b 。 |
<<= | 左移赋值 | a <<= b | 等价于 a = a << b 。 |
>>= | 右移赋值 | a >>= b | 等价于 a = a >> b 。 |
&= | 按位与赋值 | a &= b | 等价于 a = a & b 。 |
` | =` | 按位或赋值 | `a |
^= | 按位异或赋值 | a ^= b | 等价于 a = a ^ b 。 |
6. 特殊符号
符号 | 名称 | 用法示例 | 说明 |
---|---|---|---|
? : | 三元运算符 | a > b ? "Yes" : "No" | 条件表达式,根据条件返回不同结果。 |
. | 点操作符 | obj.method() | 访问对象的成员(字段或方法)。 |
[] | 下标操作符 | arr[0] | 访问数组或集合的元素。 |
() | 方法调用或分组 | method(a, b) 或 (a + b) * c | 调用方法或对表达式进行分组。 |
, | 分隔符 | int a = 1, b = 2; | 分隔多个变量或表达式。 |
"" | 字符串符号 | "Hello World" | 定义字符串。 |
'' | 字符符号 | 'A' | 定义字符。 |
// | 单行注释 | // This is a comment | 单行注释内容。 |
/* */ | 多行注释 | /* This is a comment */ | 多行注释内容。 |
@ | 注解符号 | @Override | 表示 Java 注解。 |
:: | 方法引用 | ClassName::methodName | 引用方法或构造器(Lambda 表达式的简写)。 |
7. 常见使用场景举例
-
算术运算:
int a = 10, b = 3; System.out.println(a / b); // 输出 3 System.out.println(a % b); // 输出 1
-
逻辑运算:
boolean result = (a > b) && (a < 20); System.out.println(result); // 输出 true
-
位运算:
int c = 5; // 二进制:0101 int d = 3; // 二进制:0011 System.out.println(c & d); // 输出 1(按位与) System.out.println(c | d); // 输出 7(按位或)
-
三元运算符:
int x = 10, y = 20; int max = (x > y) ? x : y; System.out.println(max); // 输出 20
-
方法引用:
List<String> list = Arrays.asList("A", "B", "C"); list.forEach(System.out::println); // 使用方法引用打印每个元素
总结
Java 中的符号和运算符是构建程序的核心组成部分,合理理解和使用它们,可以提高代码的可读性和效率。在编程中,需要根据不同的场景选择适当的符号,并注意避免误用导致逻辑错误或性能问题。