| 描述 | 运算符 |
|---|---|
| 一元后缀 | 表达式++ 表达式– () [] . ?. |
| 一元前缀 | -表达式 !表达式 ~表达式 ++表达式 –表达式 |
| 乘除法 | * / % ~/ |
| 加减法 | + - |
| 位运算 | << >> >>> |
| 二进制与 | & |
| 二进制异或 | ^ |
| 二进制或 | | |
| 关系和类型测试 | >= > <= < 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 |