运算符
算术运算符
10 / 4
10.0 / 4
double a = 10 / 4 // a = 2.0
a % b = a - a / b * b
int k = ++j; // 等价j = j+1; k = j;
int k = j++; // 等价k = j;j = j+1;
关系运算符
运算结果都是boolean类型
逻辑运算符
运算结果都是boolean类型
& 逻辑与 (第一条件为flase后面的条件仍然判断)
&& 短路与 (第一条件为flase后面的条件不再判断)
| 逻辑或 (第一条件为true后面的条件仍然判断)
|| 短路或 (第一条件为true后面的条件不再判断)
! 取反
^ 异或
开发中一般用短路
赋值运算符
=
+=
/=
会有类型强制转换(b ++ 也是)
byte b = 3;
b +=2; // b = byte(b + 2)
三元运算符
a?b:c;(a和b要为可以赋值为给接受变量的类型,或可以自动转换)本质是if-else
ex:
int a = 100;
int b = 99;
int result = a < b ? a++ : b-- ; // result = b-- = b = 99;
实现三个数最大值:
int max = (n1 > n2 ? n1 : n2) >n3 ? (n1 > n2 ? n1 : n2) : n3;