1. 算术运算符有加减乘除、取模、自增自减:+、-、*、/、%、++、--
当有两个不同数据类型进行运算时,结果会是数据类型范围大的那种。例如 int + double 会变成 double + double 最后变成 double
2. 加号的常见用法 “+”:
a. 对于数值运算,就是加法
b. 对于字符char来说,运算前,char变成int型(根据ASCCI码或者Unicode),再进行运算
c. 对于字符串String类来说,加号代表字符串连接操作(字符串和任何数据类型用加号连接,都会变成字符串)
可用括号设置优先级,例如 sout( "Java" + 20 + 30) 输出 Java2030
sout( "Java" + (20 + 30) ) 输出 Java50
3. 自增自减运算符:
a. 单独使用时,++num 和 num++ 完全一样
b. 混合使用时注意,++num ,变量 num 会立刻 +1 ,然后用结果使用;
,num++ ,会先使用 num 原来的值,然后再 +1
int num = 20; sout(num++); //输出的是 20 sout(num); //输出的是 21
int num = 20; sout(++num); //输出结果是 21 sout(num); //输出结果是 21
4. 复合赋值符中隐含了一个强制类型转换
byte num = 30;
num += 5;
sout(num);
这里面中先是 num = num + 5
num = byte + int
num = int + int
num = int
num = ( byte ) int
最后将 num 转换成 byte 型
5. 逻辑运算符 与、或、非 &&、||、! 其中 && 和 || 运算时,如果可根据左边判断出最终结果,则右边的不会执行,节省性能
6. 三元运算符:
int a = 10; int b = 15; int max = a > b ? a : b; // 如果 a > b,则 a 赋值给 max ; 否则 b 赋值给 max