Dart リスト(配列)に条件を指定して抽出する

Dart リスト(配列)に条件を指定して抽出する

Dartで、リスト(配列)に条件を指定して抽出するコードを記述してます。「where」を使用して条件を指定して抽出します。条件を満たすものが存在しない場合は、空の「Iterable型」が返ります。結果をリストに変換するには「toList」で可能です。

環境

  • OS windows11 home
  • Dart 2.18.1

条件を指定して抽出

条件を指定して抽出するには「 where 」を使用します。

リスト.where(条件)

※Iterable型が返ります

実際に、使用して判定してみます。ここでは文字列の長さを条件にしてます。

void main() {
  var list = ['a', 'bb', 'ccc'];

  print(list.where((v) => 0 < v.length)); // (a, bb, ccc)
  print(list.where((v) => 2 < v.length)); // (ccc)
  print(list.where((v) => 3 < v.length)); // ()
}

実行結果を見ると、抽出されていることが確認できます。

リスト(配列)に変換

結果をリストに変換する場合は「toList」を使用します。

void main() {
  var list = ['a', 'bb', 'ccc'];

  print(list.where((v) => 0 < v.length).toList()); // [a, bb, ccc]
  print(list.where((v) => 2 < v.length).toList()); // [ccc]
  print(list.where((v) => 3 < v.length).toList()); // []
}