[Dart]リスト(List)にフィルター(filter)処理をする方法

Dart

Dartの配列「リスト」にフィルター処理をする方法を解説します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

Listにフィルター処理をするには、「where()メソッド」を使います。

where( ( 引数 ) => 条件式 )

このメソッドは、引数としてリストの要素を取り出し、その引数を条件式の結果を受け取ります。

そして、受け取った条件式が「true」の場合は、その要素をリストに残します。

逆に「false」だった場合は、その要素を削除します。

結果、条件式を満たす要素だけが残るようになっています。

以下は、使用例です。

  var list = <int>[0,1,2,3,4,5];
  
//フィルター処理
  var filter = list
                .where((int value) => value > 2)
                .toList();
  
  print(filter);

上記は、「0~5」の数値のうち、2より大きいものだけにする例です。

ここでポイントとなるのは、where()メソッドを使ったリストは、Iterableという別の型になるということです。

Iterableになるので、フィルター処理をしたリストは、「toList()メソッド」でリストにキャストする必要があります。

また、引数の型は、リストの要素に合わせて指定します。

whereメソッドを使ったリストは、他の変数に格納する必要があります。
私が実験してみたところ、whereでフォルターしたリストを使っても、何も変わっていませんでした。

スポンサーリンク

まとめ

フィルター処理には、「where()メソッド」を使います。

スポンサーリンク

参考

Alberto Miola, Flutter Complete Reference.(書籍)

スポンサーリンク

オススメの記事

コメント

タイトルとURLをコピーしました