Dart Setから条件に一致した値を抽出する

Dart Setから条件に一致した値を抽出する

Dartで、Setから条件に一致した値を抽出するコードを記述してます。「where」を使用して条件を指定して判定します。条件に一致する値が存在しない場合は「空」のコレクションが返ります。

環境

  • OS windows11 home
  • Dart 2.18.4

条件に一致した値を抽出

条件に一致した値を抽出するは「 where 」を使用します。

セット.where(条件)

※戻り値はコレクションが返ります

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

void main() {
  var set = {'a', 'bb', 'ccc'};

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

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

Setに変換

Setに変換する場合は「toSet」を使用します。

void main() {
  var set = {'a', 'bb', 'ccc'};

  print(set.where((v) => 0 < v.length).toSet()); // {a, bb, ccc}
  print(set.where((v) => 1 < v.length).toSet()); // {bb, ccc}
  print(set.where((v) => 3 < v.length).toSet()); // {}
}