Dart編程語言從基礎到進階4

Dart編程語言從基礎到進階

接上篇的數據類型

Maps

Map是關聯keys和values的對象。keys和values可以是任何類型的對象。而且在一個Map中一個key只能出現一次,values沒有這個限制。
比如:

var gifts = {
  // 鍵:    值
  'first': 'partridge',
  'second': 'turtledoves',
  'fifth': 'golden rings'

};

var nobleGases = {

   2: 'helium',

   10: 'neon',

   18: 'argon',

};

Tips:Dart 將 gifts 變量的類型推斷爲 Map<String, String>,而降 nobleGases 的類型推斷爲 Map<int, String>。如果你向這兩個 Map 對象中添加不正確的類型值,將導致運行時異常。

同時我們也可以使用Map自帶的構造器去創建:

var gifts = Map();
gifts['first'] = 'partridge';
gifts['second'] = 'turtledoves';
gifts['fifth'] = 'golden rings';


var nobleGases = Map();
nobleGases[2] = 'helium';
nobleGases[10] = 'neon';
nobleGases[18] = 'argon';

Tips:這裏爲什麼使用 Map() 而不是使用 new Map() 構造 Map 對象。因爲從 Dart2 開始,構造對象的 new 關鍵字可以被省略掉。

向現有的 Map 中添加鍵值對:

var gifts = {'first': 'partridge'};
gifts['fourth'] = 'calling birds'; // 添加鍵值對

從一個 Map 中獲取一個值:

var gifts = {'first': 'partridge'};
assert(gifts['first'] == 'partridge');

如果檢索的 Key 不存在於 Map 中則會返回一個 null:

var gifts = {'first': 'partridge'};
assert(gifts['fifth'] == null);

使用 .length 可以獲取 Map 中鍵值對的數量:

var gifts = {'first': 'partridge'};
gifts['fourth'] = 'calling birds';
assert(gifts.length == 2);

後面其實還有一個Runes和Symbols,但是在實際開發中真的是太少用了,所以這裏暫且擱置吧。畢竟剛開始學一下子整太多的新東西也不好接受。

下節內容:函數

結語:

最近在錄製視頻,到時候也會免費放在公衆號中供大家學習交流使用。如果對您有用請關注,如果文中有錯也歡迎指正。共同學習,共同進步。

掃碼關注"計算機自學平臺"

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章