【Flutter/Dart】Listのドット3つ(...)とは?スプレッド構文の使い方

Listなど配列の要素として度々登場するドット3つ...とは何かについて紹介します。

結論から言うと...はスプレッド演算子と呼ばれ、ある配列に別の配列の要素を追加でき、...を使用した構文をスプレッド構文と呼びます。

\ 世界最大級のオンライン学習サービス /

目次

スプレッド構文の使い方|ドット3つ(...)の使用例

var list = [1, 2, 3];
var list2 = [0, ...list];
print(list2);

//結果
//[0, 1, 2, 3]

スプレッド構文では上記コードのように配列の中で別の配列の外枠を外し要素を追加できます。

スプレッド構文では好きな場所に要素を追加できる

var list = [1, 2, 3];
var list2 = [0, ...list, 4];
print(list2);

//結果
//[0, 1, 2, 3, 4]

上記コードのようにスプレッド構文では配列の好きな位置に要素を追加できます。

Mapでも同じ

var map = {
  'Alex': 18,
  'Brian': 20,
  'Charlie': 17,
};

var map2 = {
  ...map,
  'Draco': 16,
};


print(map2);

//結果
//{Alex: 18, Brian: 20, Charlie: 17, Draco: 16}

Mapでも同様です。

追加する要素がNullの可能性がある場合

List? list;
var list2 = [0, ...?list];
print(list2);

//結果
//[0]

スプレッド構文で追加する要素(配列)がNullである可能性がある場合は...?を使用します。

addAllでも別の配列の要素を追加できる

var list = [1, 2, 3];
var list2 = [0];
list2.addAll(list);
print(list2);

//結果
//[0, 1, 2, 3]

addAllでもスプレッド構文と同じように要素を一括追加できます。

一緒に読みたい

参考

  • URLをコピーしました!
目次