コレクション

[C#] 条件に合致したListの要素を削除する(.RemoveAll)

2021年5月14日

条件に合致したListの要素を削除するには .RemoveAll()を使用します。

サンプル

以下のlistを例にします。

using System.Collections.Generic;

//listを生成する
var list = new List<string>();
list.Add("みかん");
list.Add("りんご");
list.Add("ぶどう");
list.Add("りんご");
list.Add("もも");
list.Add("なし");
list.Add("りんご");

例1)listから条件に合致した要素を削除する(1つ)

//要素「りんご」を全て削除する
int a = list.RemoveAll(x => x.Equals("りんご"));

結果

みかん
ぶどう
もも
なし

戻り値には3が返ります。

例2)listから条件に合致した要素を削除する(複数)

//要素「りんご」または「みかん」を全て削除する
int a = list.RemoveAll(x => x.Equals("りんご") || x.Equals("みかん"));

結果

ぶどう
もも
なし

戻り値には4が返ります。

備考

  • .RemoveAll の戻り値には、削除した件数が返ります。
  • 条件に合致する要素が存在しない場合でもエラーにはなりません。

関連記事

-コレクション
-