Java运算符分为算术、关系、逻辑、赋值、位运算和条件六类:算术支持数值计算与自增减;关系返回布尔值;逻辑具短路特性;赋值含复合形式;位运算操作二进制;三元实现简洁条件分支。

Java里的运算符按功能可分为六大类:算术、关系、逻辑、赋值、位运算和条件(三元)运算符。它们是构成表达式的基础,每类都有明确的使用场景和行为特点。
算术运算符:处理数值计算
用于整数和浮点数的基本数学运算,包括:
- + - * / %:加、减、乘、除、取余(模)
- ++ --:自增、自减(分前置和后置,影响参与运算的时机)
注意:/ 对两个整数操作时结果仍是整数(截断小数),如 5/2 得 2;要得小数需至少一个操作数为浮点型,如 5.0/2 或 (double)5/2。% 只适用于数值类型,结果符号与被除数一致(如 -7 % 3 得 -1)。
关系运算符:比较大小并返回布尔值
用于判断两个值之间的关系,结果恒为 boolean 类型:
立即学习“Java免费学习笔记(深入)”;
- == != > =
注意:== 比较的是值(对基本类型)或引用(对对象),不要与赋值符 = 混淆;字符串内容比较应使用 .equals(),而非 ==。
逻辑运算符:组合布尔条件
主要连接关系表达式,支持短路特性以提升效率:
-
&&(短路与):左操作数为
false时,右操作数不执行 -
||(短路或):左操作数为
true时,右操作数不执行 - !(逻辑非):对单个布尔值取反
补充:& 和 | 也可作逻辑运算符(非短路),但更常用于位运算;^ 是异或,相同为 false,不同为 true。
赋值与复合赋值运算符:更新变量值
= 是基础赋值符;复合赋值如 +=、-=、*=、/=、%= 等,隐含类型转换:
- 例如
byte b = 1; b += 2;合法(编译器自动处理类型收缩) - 但
b = b + 2;会报错(b+2结果为int,不能直接赋给byte)
位运算符与三元运算符:面向底层与简洁分支
位运算符(& | ^ ~ > >>>)直接操作整数的二进制位,常用于权限控制、加密、高效计算等场景。
三元运算符(? :)提供单行条件赋值能力:
- 格式:
条件 ? 表达式1 : 表达式2 - 要求两个表达式的类型可兼容(如都是
int,或能自动转为同一类型) - 例如:
int max = a > b ? a : b;
掌握这些运算符的关键在于理解其操作数类型、返回类型、执行顺序(优先级)以及副作用(如自增/自减、短路行为)。实际编码中多结合括号明确意图,避免因优先级引发歧义。










