.net column

.NET開発者のためのブログメディア
プログラムコード

【C#・LINQ】Anyメソッドの概要と使い方について

2020年04月07日

C#でLINQのAnyメソッドについて紹介します。Anyメソッドとは、配列やリストに対して要素があるかのチェックや、指定した条件を満たす要素があるかどうかを判定する時に使用するメソッドです。
配列やリストの要素を調べることは頻度の多い処理なので、Anyメソッドを使用する機会も多いです。

SE
C#で使用するLINQのAnyメソッドを使おうと思いましたが、使い方が分かりません……
PL
配列やリストの要素を調べる際に使うのがAnyメソッドです。使い方を一緒に確認しましょう。

LINQのAnyメソッドとは?

Anyメソッドとは、配列やリストの要素を調べることができるメソッドです。使い方は2通りあります。

1つ目は、配列やリストに要素が含まれているか、含まれていないかを調べるものです。
配列やリストを取得する処理を記述する際などで、中身が空かどうかを判定するという処理は頻繁に使います。空かどうかを判定するには様々な方法がありますが、Anyメソッドによる判定は使いやすい処理といえます。

2つ目は、配列やリストに指定した条件を満たす要素が含まれているか調べるものです。

このように様々な条件を指定して、条件を満たす要素が含まれているかをチェックできます。

LINQのAnyメソッドの使い方

Anyメソッドの使い方を確認します。

要素の有無をチェックする

まず、配列やリストに要素が含まれているかをチェックするプログラムです。以下のコードでは日曜から土曜までの曜日を定義した配列を指定して、要素が含まれているかをチェックしています。

実行すると、以下の結果が出力されます。

曜日のチェック結果

Anyメソッドは下記のように配列やリストに対して、メソッドを呼び出します。

上記の例では、配列に要素が含まれているので、結果はTrueになります。

続いて、要素が含まれていない場合の例です。
以下のコードでは、List型の変数を用意したが、要素が0個の状態となります。

実行すると、以下の結果になります。

要素の有無のチェック結果

上記の例では、リストに要素が含まれていないので結果はFalseです。

条件を満たす要素をチェックする

次は配列やリストに指定した条件を満たす要素が含まれているかをチェックするプログラムです。
以下のコードは、1月から12月まで、それぞれの月の日数を定義した配列に対して、指定した条件を満たす要素が含まれているかをチェックしています。

実行すると、以下の結果が出力されます。

日数のチェック結果

Anyメソッドに引数を追加しました。

このうち、「value == 28」の部分が条件です。
よって、上記のプログラムでは配列の中に値が28となっている要素があるかどうかをチェックしていますので、結果はTrueです。

続いて条件を変更してみます。

実行すると、以下の結果になります。

日数のチェック結果2

このプログラムでは条件を「value <= 28」に変更しました。 このように、xx以上、xx以下であるかという条件も使用することができます。 [add_dialog_balloon 'SE' 'left' 'Anyメソッドは配列やリストの要素の有無を調べることができて便利なメソッドですね。'] [add_dialog_balloon 'PL' 'right' 'Anyメソッドは様々な条件で使用できるので、ぜひ使ってみてください。']

Anyメソッドは配列やリストの要素を調べるメソッド

Anyメソッドを使用して、配列やリストの要素の有無を調べることができました。 開発の場面で、配列やリストの中にどんな要素が入っているか調べる場面は多いので、今回のAnyメソッドの使い方をしっかり理解して、使ってみてください。


.NET分野でのキャリアアップをお考えの方は、現在募集中の求人情報をご覧ください。

求人一覧

また、直接のエントリーも受け付けております。

エントリー(応募フォーム)