コレクションの拡張メソッド Collection Extensions

このページでは、コレクションを操作するための拡張メソッドについてまとめていきます。
コレクションに対する拡張メソッドの主な処理は、要素の追加と削除やコレクションに要素が存在するかどうかを判定するものとなります。

拡張メソッドがイマイチよくわかっていない方は、以下の記事が参考になります。

拡張メソッドの作り方 (実装方法) C#
String クラスにバイト数が返してくれるメソッドが欲しい! DateTime 構造体に日付が含まれる月の最終日 (末日) を返して...

コレクションの拡張メソッド CollectionExtensions

コレクションの拡張メソッドは CollectionExtensions クラスに実装しています。

CollectionExtensions クラスのメソッド一覧

CollectionExtensions クラスに実装しているメソッドの一覧です。

メソッド名 説明
AddIf 指定した条件を満たす場合に要素を追加します。
AddIfNotContains 特定の要素がコレクションに格納されていなければ追加します。
AddRange コレクションに複数の要素を追加します。
AddRangeIf 複数の要素のそれぞれに対して指定した条件を満たす場合に追加します。
AddRangeIfNotContains 複数の要素のうち、コレクションに格納されていない要素を追加します。
ContainsAll 複数の要素のすべてがコレクションに格納されているかどうかを判定します。
ContainsAny 複数の要素のいずれかがコレクションに格納されているかどうかを判定します。
IsEmpty コレクションが空であるか (要素が格納されていないか) どうかを判定します。
IsNotEmpty コレクションが空でないか (要素が格納されているか) どうかを判定します。
IsNotNullAndEmpty コレクションが Null 及び空でないかどうかを判定します。
IsNullOrEmpty コレクションが Null または空であるかどうかを判定します。
RemoveIf 指定した条件を満たす場合に要素を削除します。
RemoveIfContains 特定の要素がコレクションに格納されていなければ削除します。
RemoveRange コレクションから複数の要素を削除します。
RemoveRangeIf 複数の要素のそれぞれに対して指定した条件を満たす場合に削除します。
RemoveRangeIfContains 複数の要素のうち、コレクションに格納されている要素を削除します。
RemoveWhere コレクション内の条件を満たす要素をすべて削除します。
条件を表す関数の形式: Func
RemoveWhere コレクション内の条件を満たす要素をすべて削除します。
条件を表す関数の形式: Func

AddIf メソッド

追加する要素が指定した条件を満たす場合にコレクションに追加するメソッドです。

AddIfNotContains メソッド

追加する要素がコレクション内になければコレクションに追加するメソッドです。

AddRange メソッド

複数の要素をコレクションに追加するメソッドです。

AddRangeIf メソッド

追加する要素が指定した条件を満たす場合にコレクションに追加するメソッドです。
要素は一度に複数指定できます。

AddRangeIfNotContains メソッド

追加する要素がコレクション内になければコレクションに追加するメソッドです。
要素は一度に複数指定できます。

ContainsAll メソッド

指定した要素のすべてがコレクション内にあるかどうかを示す値を取得するメソッドです。

ContainsAny メソッド

指定した要素のいずれかがコレクション内にあるかどうかを示す値を取得するメソッドです。

IsEmpty メソッド

コレクション内に要素がないかどうかを示す値を取得するメソッドです。

IsNotEmpty メソッド

コレクション内に要素があるかどうかを示す値を取得するメソッドです。

IsNotNullAndEmpty メソッド

コレクションがnullでなくコレクション内に要素があるかどうかを示す値を取得するメソッドです。

IsNullOrEmpty メソッド

コレクションがnullまたはコレクション内に要素がないかどうかを示す値を取得するメソッドです。

RemoveIf メソッド

削除する要素が指定した条件を満たす場合にコレクションから削除するメソッドです。

RemoveIfContains メソッド

削除する要素がコレクション内にあればコレクションから削除するメソッドです。

RemoveRange メソッド

複数の要素をコレクションから削除するメソッドです。

RemoveRangeIf メソッド

削除する要素が指定した条件を満たす場合にコレクションから削除するメソッドです。
要素は一度に複数指定できます。

RemoveRangeIfContains メソッド

削除する要素がコレクション内にあればコレクションから削除するメソッドです。
要素は一度に複数指定できます。

RemoveWhere メソッド

指定した条件を満たすコレクション内の要素をコレクションから削除するメソッドです。

RemoveWhere メソッドは、条件を表す関数がコレクションの要素を引数に受けて判定結果を返す「Func<T, bool>」の形式と、コレクションの要素とインデックスを引数に受けて判定結果を返す「Func<T, int, bool>」の形式の2種類になります。

今後もコレクションの拡張メソッドが増えてきたら随時追加していきます。

参考記事

文字列の拡張メソッドについては、以下の記事をご参照ください。

文字列の拡張メソッド String Extensions
今まで貯めてきた文字列の拡張メソッドをこのページにまとめておきます。 拡張メソッドについては以下の記事を参照してください。 ...

日付と時間の拡張メソッドについては、以下の記事をご参照ください。

日付と時間の拡張メソッド DateTime Extensions
日付と時刻の拡張メソッドがある程度貯まってきたのでこのページにまとめておこうと思います。 特定の日付の判定処理が多いですが、カレンダー関連...

10進数の拡張メソッドについては、以下の記事をご参照ください。

10 進数の拡張メソッド Decimal Extensions
10 進数の拡張メソッドをになります。 拡張メソッドがわからない方は、以下の記事を参考にしてください。 10 進数の拡張...

倍精度浮動小数点数の拡張メソッドについては、以下の記事をご参照ください。

倍精度浮動小数点数の拡張メソッド Double Extensions
倍精度浮動小数点数 Double の拡張メソッドの一覧です。 Double の 拡張メソッドは Double 構造体、Math クラス、T...