Java运算符
算术运算符
加法运算符 + 可用于数字相加或字符串拼接。当数字与字符相加时,字符会被转换为对应的 ASCII 码值。
减法 -、乘法 *、除法 / 和取余 % 运算符只能用于数字运算。整数除法结果会舍弃小数部分。
示例代码:
int num1 = 10;
int num2 = 5;
char num3 = 'f';
System.out.println(num1 - num3); // 输出 -92(ASCII 码计算)
自增与自减运算符
++ 和 -- 运算符分为前置和后置形式。前置形式先增减后使用,后置形式先使用后增减。
int sa = 1;
int ret = sa++ + ++sa + ++sa + sa++; // 计算顺序:1 + 3 + 4 + 4 = 12
System.out.println(ret); // 输出 12
赋值运算符
复合赋值运算符(如 +=、-=)会自动进行类型转换。如果左侧变量类型与右侧计算结果类型不一致,会执行隐式类型转换。
int b = 1086;
b += b; // 等价于 b = b + b
System.out.println(b); // 输出 2172
关系运算符
关系运算符(如 >、==)返回布尔值 true 或 false。注意 == 比较的是值,对于引用类型比较的是地址。
int f = 1, g = 2;
System.out.println(f == g); // 输出 false
逻辑运算符
逻辑运算符包括非短路逻辑(&、|)和短路逻辑(&&、||)。短路逻辑在能够确定结果时会跳过后续判断。
int i = 5, j = 10, k = 15;
System.out.println(++i > ++j && ++j < ++k); // 输出 false,且 j 和 k 的自增被跳过
三目运算符
语法为 变量 = 布尔表达式 ? 值1 : 值2。若表达式为 true 则返回值1,否则返回值2。
String idea = 5 > 3 ? "苹果" : "香蕉";
System.out.println(idea); // 输出 "苹果"
注意事项
-
整数除法会直接截断小数部分:
System.out.println(10 / 3); // 输出 3 -
字符参与算术运算时使用 ASCII 码值:
char c = 'a'; System.out.println(c * 1); // 输出 97 -
复合赋值运算符的隐式类型转换:
byte x = 10; x += 5; // 合法,等价于 x = (byte)(x + 5)
4343

被折叠的 条评论
为什么被折叠?



