描述 | 运算符 |
---|---|
一元后缀 | 表达式++ 表达式– () [] . ?. |
一元前缀 | -表达式 !表达式 ~表达式 ++表达式 –表达式 |
乘除法 | * / % ~/ |
加减法 | + - |
位运算 | << >> >>> |
二进制与 | & |
二进制异或 | ^ |
二进制或 | | |
关系和类型测试 | >= > <= < as is is! |
相等判断 | == != |
逻辑与 | && |
逻辑或 | || |
空判断 | ?? |
条件表达式 | 表达式 1 ? 表达式 2 : 表达式 3 |
级联 | .. ?.. .. ?.. |
赋值 | = *= /= += -= &= ^= 等等…… |
赋值操作符
1 | b ??= value; // 如果 b 是 null,则 value 赋值给 b; |
条件表达式
1 |
|
级联操作符
可以实现链式调用。
1 | //StringBuffer write就是Java的append |
安全操作符
1 | String sb; |
判断类型运算符
操作符 | 描述 |
---|---|
as | 类型转换 |
is | 如果对象是指定类型则返回 true |
is! | 如果对象是指定类型则返回 false |
其他运算符
运算符 | 名字 | 描述 |
---|---|---|
() | 使用方法 | 代表调用一个方法 |
[] | 访问 List | 访问 List 中特定位置的元素 |
. | 访问成员 | 成员访问符 |
?. | 条件访问成员 | 与上述成员访问符类似,但是左边的操作对象不能为 null,例如 foo?.bar,如果 foo 为 null 则返回 null ,否则返回 bar |