Dart Learn Notes 03

操做符

dart 有一套本身定義的操做符:
這裏我就再也不寫了,直接copy一份官網的。java


若是有過編程基礎,上邊展現的操做符應該都不陌生.編程

算術運算符

加: +
減: -
乘: *
除: /
取餘: %
取模: ~/
自增: ++var, var++
自減: --var, var--

比較運算符

==: 等於
!=: 不等
>: 大於
<: 小於
>=: 大於等於
<=: 小於等於

類型判斷

as: 類型轉換
is: 判斷是不是某種類型
is!: 判斷是否不是某種類型

賦值操做符

=: 賦值
??: 判斷是否是null,若是是null,進行賦值
        var a = 3;
        var b;
        b ??= a;(若是b是null,把a賦值給b)
*=:  a *= 3; ==> a = a * 3;
+=: a += 3; ==> a = a + 3;
...

賦值操做符很簡單就不一一說了。app

邏輯操做符

&&: 邏輯與
||: 邏輯非
!: 非

位操做符

&: 與
|: 或
^: 異或
<<: 左移
>>: 右移

條件表達式

var a = 1 ? true:false;
int  getNum(int a) => a ??  3; 若是 a == null,返回3,不然返回as

級聯操做符

..

首先說下什麼是級聯操做符,java中有個詞叫鏈式編程,好比:ui

StringBuilder() sb = new StringBuilder();
sb.append('a').append('b').toString();

級聯和鏈式在外表上看上去很像。3d

querySelector('#button')
    ..text =  'Confirm'
    ..classes.add('important')
    ..onClick.listen((e)  => window.alert('Confirmed!'));

不須要頻繁的建立對象,建立一個button的對象後,後續的對屬性的修改和方法的調用操做都是針對這個對象來講。
猜想這個特性,會在編寫服務和應用的時候對於連續操做的場景會大量使用。code

相關文章
相關標籤/搜索