C#のLinqのメソッド一覧 C#のメソッド、プロパティ一覧 配列、リスト

【C# sharp】ListクラスのExists、Find、FindAll、FindIndex、FindLast、FindLastIndexメソッドの使い方

今回のテーマ

今回の記事では、List<T>クラスのラムダ式を引数に持っているメソッドをピックアップしてみます。

ピックアップするのは下記のメソッドです。

ラムダ式と組み合わせるメソッド一覧

  • Exists
  • Find
  • FindAll
  • FindIndex
  • FindLast
  • FindLastIndex

数が多いですが、頑張って使用例を作っていきたいと思います。ぜひ、参考にしてくださいね。

ラムダ式については下記に詳しく書いていますので、良ければみてください。

CHECK

【C# sharp】匿名メソッド、ラムダ式(=>)について解説します。

まえがき こんばんは、かっぱちゃんです。 今回は下記のテーマについて解説します。 今回のテーマ 匿名メソッドとラムダ式について 今回の記事は下記の記事の続きなので、まだ見ていない方は良ければみてくださ ...

続きを見る

Exists

まずはExistsです。メタデータで覗いてみると、下記のようなメソッドでした。

引数にラムダ式を指定して、一致している場合は、bool型で返してくれるみたいですね。

早速参考となるソースコードを書いてみます。

 出力結果
True

リスト内の要素を調べて、一致してたらTrueを返してくれます。

下記のようにStartWithメソッドなどと組み合わせて使うのも良さそうですね。

 出力結果
True

Find

Findメソッドは最初に引数に指定した要素を返すメソッドです。下記にようなメソッドとなっています。

引数にラムダ式を指定し、要素と一致していたらその要素を返してくれるみたいですね。

早速例として下記のソースコードの動きを確認してみます。

 出力結果
Fireman

一致しているFiremanを返しましたね。今度はStartWithメソッドを使用して下記のように指定してみます。

 出力結果
Rockman

初めに一致した値のみ返すことが分かります。

因みにどの要素にも一致しない場合は、空文字を返しました。

他のLinqの記事についてはこちら

FindAll

続けて、FindAllです。用途はFindメソッドに似てますが、このメソッドは一致している全ての要素を返してくれます。

一応、メソッドを確認してみましょう。

一致した要素をリストとして返してくれるのが分かりますね。便利です。

Findメソッドで紹介した二つ目のソースコードを少し変更し、下記のようにしてみました。

 出力結果
Rockman
Rollchan

「R」から始まる全てのロボット名が出力されましたね。

個人的にFindメソッドよりもFindAllメソッドの方が便利だと思います。

サルモリ
Findメソッドは一番初めの値のみ取れればいい場合、FindAllでは、どうしても性能に問題ある場合に使用するよ!

FindIndex

FindIndexメソッドも今まで通りに用途は似ています。

メソッドとしては下記の引数のパターンが用意されています。

今回は引数がラムダ式の一つのパターンのみしか紹介しませんが、startIndexは検索を始める位置、countは検索する個数を表します。

戻り値はint型なので、要素の値が一致した位置の番号を返すメソッドのようですね。例となるソースコードを書いていきます。

 出力結果
2

一致した「Fireman」の要素番号が返ってきていますね。因みにどの要素にも一致しない場合は、-1が返ります。

FindLast

Findメソッドは前から検索していきますが、FindLastメソッドは後ろから検索をしていきます。

下記のソースコードを見れば、その通りになっていることが分かると思います。

 出力結果
Rollchan

後ろから検索しているので、「Rollchan」が出力されていますね。Findメソッドと一緒に覚えておきましょう。

FindLastIndex

FindIndexが前から検索するので、FindLastIndexは後ろから検索します。

以下略・・・。

サルモリ
もう使い方は分かるよね?

他のLinqの記事についてはこちら

まとめ

今回はラムダ式と組み合わせることが出来る下記のリストのメソッドを紹介しました。

今回紹介したメソッド

  • Exists
  • Find
  • FindAll
  • FindIndex
  • FindLast
  • FindLastIndex

あと3つラムダ式と組み合わせることができるメソッドが3つあるので、別の記事で紹介します。

今回紹介した中でFindAllは特に便利なので、ぜひ覚えてくださいね。

それでは、最後まで読んでくれてありがとうございました。

サルモリ
最後まで見てくれてありがとう!

ラムダ式については下記に詳しく書いているので、併せて読んでみてください。

配列、リストなどの記事はこちら

CHECK

【C# sharp】匿名メソッド、ラムダ式(=>)について解説します。

まえがき こんばんは、かっぱちゃんです。 今回は下記のテーマについて解説します。 今回のテーマ 匿名メソッドとラムダ式について 今回の記事は下記の記事の続きなので、まだ見ていない方は良ければみてくださ ...

続きを見る

 

 

-C#のLinqのメソッド一覧, C#のメソッド、プロパティ一覧, 配列、リスト

Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

Powered By
Best Wordpress Adblock Detecting Plugin | CHP Adblock