Linq

C# Linq リスト、配列から最大(最小)の要素のレコードを取得する方法

今回のテーマ

こんばんは、かっぱちゃんです。

今回のテーマは下記について書いていきます。

今回のテーマ

リストの中から最大(最小)の要素を指定し、そのレコードを取得する方法

既に紹介したメソッドを組み合わせて、最大(最小)の要素を指定し、そのレコードを取得する方法を紹介します。

今回使うメソッドはMax、Select、Where、FirstOrDefaultなどを使っていきます。

下記の記事でそれぞれのメソッドについて解説しているので良ければみてください。

CHECK

C# Linqの使い方。Select、Whereを解説。

今回のテーマContents1 今回のテーマ2 Linqを使う場面3 Linqメソッドの解説の流れ4 Selectの使い方5 Whereの使い方6 まとめ こんばんは、かっぱちゃんです。 今回は下記の ...

続きを見る

CHECK

C# Linqの使い方。Avarage、Max、Min、Sumを解説。

今回のテーマContents1 今回のテーマ2 LinqのAvarage、Max、Min、Sumについて2.1 Avarage2.2 Max2.3 Min2.4 Sum3 Linqメソッドの解説の流れ ...

続きを見る

色々なメソッドを組み合わせてみよう!
KappaChan

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

合わせて読みたいC# Linqを勉強するならこれだけは読んでほしいオススメの本3選 オススメの参考書

C#を勉強するためのオススメの本を紹介Contents1 C#を勉強するためのオススメの本を紹介1.1 C#の基礎を学ぶなら「やさしいC#」1.2 C#の全体像を学ぶなら「独習C#」1.3 C#をさら ...

続きを見る

Linqの演習問題はこちら

他の演習問題はこちら

Linqメソッドの解説の流れ

下記の流れで説明したいと思います。

行いたい処理の例を書きます。

Linqを使用するソースコードを書きます。

ソースコードには、リストを使います。

定義するクラスとデータについて

今回、紹介するためのクラスです。各ロボットの強さを追加しました。

この強さを使用して、例をだしていきたいと思います。

使用するクラス

使用するデータ

実際はプログラミング内でリストに追加しますが、下記のようなデータとします。

Name Color Strength  maker
Rockman Blue 5 Dr Light
Fireman Red 3 Dr Wily
Iceman Blue 3 Dr Wily
Elecman Yellow 4 Dr Wily
Roll Pink 1 Dr Light
Airman Blue 2 Dr Wily
Woodman Green 2 Dr Wily
Quickman Red 5 Dr Wily

最大値の要素のレコードを取り出す

早速、一番強いロボットのレコードを取り出していきます。

まず、Maxメソッドで要素を指定した場合に何を返すのか見てみましょう。

Maxメソッドで要素を指定してみる

 result
5

最大値の5を返しましたね。この5を使用して、レコードも出力していきましょう。

行いたい処理

強さが最大値のロボットを出力する。

強さが最大値のロボットを出力する。

 result
Rockman
Quickman

上記の例のように、2つのLinqに分けることで1番強いロボットを出力することができます。

ロックマンとクイックマンを出力できてます。今度は片方を出力するためにFirstOrDefaultメソッドも指定してみましょう。

1番強いロボットの中から1体出力する

 result
Rockman

ロックマンが出力できていますね。

FirstOrDefaultメソッドは条件を選択することも可能です。

一番強いロボットの中からQを含むロボットを1体出力する

 result
Quickman

指定した条件のロボットが出力されましたね。

まとめ

今回、使用したメソッドは下記です。

今回のメソッド一覧

  • Max
  • FirstOrDefault
  • Where
  • Select

今回は指定した要素が一番大きいレコードを出力する方法を紹介しました。

このように様々なメソッドを組み合わせることで色々なことができるのが分かりますね。

他にも色々なメソッドを組み合わせていきます。

KappaChan
最後まで見てくれてありがとう!

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

Linqの演習問題はこちら

他の演習問題はこちら

-Linq

X