運(yùn)算符(中)

2020-02-03 18:54 更新

賦值運(yùn)算符

使用 = 為變量賦值。 使用 ??= 運(yùn)算符時(shí),只有當(dāng)被賦值的變量為 null 時(shí)才會(huì)賦值給它。

// 將值賦值給變量a
a = value;
// 如果b為空時(shí),將變量賦值給b,否則,b的值保持不變。
b ??= value;

復(fù)合賦值運(yùn)算符(如 += )將算術(shù)運(yùn)算符和賦值運(yùn)算符組合在了一起。

=–=/=%=>>=^=
+=*=~/=<<=&=|=

以下說(shuō)明復(fù)合賦值運(yùn)算符的作用:

 Compound assignmentEquivalent expression
For an operator op:op= ba = a op b
Example:a += ba = a + b

以下示例使用賦值和復(fù)合賦值運(yùn)算符:

var a = 2; // 使用 = 復(fù)制
a *= 3; // 復(fù)制并做乘法運(yùn)算: a = a * 3
assert(a == 6);


邏輯運(yùn)算符

邏輯操作符可以反轉(zhuǎn)或組合布爾表達(dá)式。

OperatorMeaning
!exprinverts the following expression (changes false to true, and vice versa)
||logical OR
&&logical AND

下面是關(guān)于邏輯表達(dá)式的示例:

if (!done && (col == 0 || col == 3)) {
  // ...Do something...
}


按位和移位運(yùn)算符

在 Dart 中,可以單獨(dú)操作數(shù)字的某一位。 通常情況下整數(shù)類型使用按位和移位運(yùn)算符來(lái)操作。

OperatorMeaning
&AND
|OR
^XOR
~exprUnary bitwise complement (0s become 1s; 1s become 0s)
<<Shift left
>>Shift right

下面是關(guān)于按位和移位運(yùn)算符的示例:

final value = 0x22;
final bitmask = 0x0f;

assert((value & bitmask) == 0x02); // AND
assert((value & ~bitmask) == 0x20); // AND NOT
assert((value | bitmask) == 0x2f); // OR
assert((value ^ bitmask) == 0x2d); // XOR
assert((value << 4) == 0x220); // Shift left
assert((value >> 4) == 0x02); // Shift right


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)