運算子優先權
類別 | 操作者 | 關聯性 |
---|---|---|
字尾 | () [] |
左到右 |
一元 | ! ~ |
右到左 |
乘 | * / % |
左到右 |
新增劑 | + - |
左到右 |
轉移 | >> >>> << |
左到右 |
相關的 | > >= < <= |
左到右 |
相等 | == != |
左到右 |
按位和 | & |
左到右 |
按位 xor | ^ |
左到右 |
按位或 | | |
左到右 |
邏輯和 | && |
左到右 |
邏輯或 | || |
左到右 |
分配 | = += -= *= /= %= >>= <<= &= ^= |
= |
逗號 | , |
左到右 |
Scala 中的程式設計基於運算子中的第一個字元給出以下概述。例如,>
是運算子 >>>
中的第一個字元:
操作者 |
---|
(所有其他特殊字元) |
* / % |
+ - |
: |
= ! |
< > |
& |
^ |
| |
(所有字母) |
(所有賦值運算子) |
此規則的一個例外是關於賦值運算子,例如+=
,*=
等。如果運算子以相等的字元(=)結尾且不是比較運算子 <=
,>=
,==
或 !=
之一,則運算子的優先順序與簡單的賦值相同。換句話說,低於任何其他運算子的。