運算符
Dart支持各種運算符(有些語言翻譯爲運算符,有些叫操作符,都指的是Operator。),並且其中的一些操作符還能進行重載。完整的運算符(操作符)如下表:
描述 | 運算符(操作符) |
---|---|
一元后綴 | expr++ expr-- () [] . ?. |
一元前綴 | -expr !expr ~expr ++expr --expr |
乘法級別 | * / % ~/ |
加法級別 | + - |
進位(移動位運算) | << >> |
按位與 | & |
按位異或 | ^ |
按位或 | | |
大小關係和類型判斷 | >= > <= < as is is! |
相等 | == != |
邏輯與 | && |
邏輯或 | || |
if null | ?? |
三元運算 | expr1 ? expr2 : expr3 |
級聯 | .. |
賦值 | = *= /= ~/= %= += -= <<= >>= &= ^= |= ??= |
當你使用操作符時,你就是在創建表達式:
a++
a--
a + b
a = b
a == b
c ? a : b
a is T
注:
上面的操作符列表中,每一行都比下一行的優先級要高。
對於二元運算符,其左邊的操作數將會界定使用的操作符種類。例如:當你使用一個Vector對象以及一個Point對象時。aVector+aPoint使用的+是由Vector所定義的。