これまで、メソッド、クラス、インスタンス、カプセル化、プロパティ、継承、オーバーライド、ラムダ式などを順に紹介してきました。今回は、「LINQでよく使うメソッド型」を紹介させていただきます。
【C#入門】クラスとは?役割とVisual Studioでの作り方を紹介
【C#入門】インスタンスとコンストラクタとは?
【C#入門】カプセル化とは?アクセス修飾子の種類と使い方を紹介
【C#入門】プロパティとは?SetとGetを使った書き方をご紹介
【C#入門】継承とは?役割と使い方をご紹介
【C#入門】Collection(コレクション)とは?LIST型の使い方をご紹介
LINQとは
LINQ(リンク)はC#3.0のバージョンから導入された仕組みで、配列やコレクション、データベースに格納されているデータをとても簡単に整理できる仕組みです。条件に当てはまるデータを取り出したり、合計値を算出したり、などができます。
詳しくはこちらの記事にもまとめていますが、LINQはクエリ構文とメソッド構文の二種類あります。
本記事ではメソッド構文でよく使う基本的なメソッド型をご紹介します!
よく使うメソッド型
前回の記事では、Whereのメソッドを紹介しましたが、LINQで利用できるメソッドは、他にもたくさんあります。Whereと同様に、「変数名.メソッド名()」と記載しましょう。
☆LINQで使えるメソッド☆
下記を覚えておくととても便利です。
ラムダ式については、こちらの記事で説明しています。
メソッド名 | 役割 |
Where(ラムダ式) | 条件を満たす要素を全て返す |
Select(ラムダ式) | 各要素に処理を施して新しいデータを返す |
OrderBy(ラムダ式) | 昇順に並べ替えたデータを返す |
OrderByDescending(ラムダ式) | 降順に並べ替えたデータを返す |
Distinct() | 重複を除いたデータを返す |
Max() | 最大値を返す |
Min() | 最小値を返す |
Average() | 平均値を返す |
Sum() | 合計値を返す |
Count() | 要素数を返す |
All() | 全ての要素が条件を満たしているか判断 |
プログラム例
先ほどの一覧から、一部メソッドをサンプルとして書きました。
Salesという配列の中から、①売上件数②売上の最大値③売上の税込み合計金額④配列にある全ての値が1以上かどうかの判断を行っています。Allでは、条件を満たすとき、Trueを返します。
■実行結果
先ほどの4パターンの結果が無事表示されました!
ひとこと
今回はメソッドの中でも、基本的なものを紹介させていただきましたが、簡単にデータの抽出や加工ができることが分かりますね。今回紹介したメソッドの内容については、SQLでもよく使います!
今回の説明は「確かな力が身につくC# 「超」入門」を参考にさせていただきましたが(例題はオリジナルです)、「もっと前から読んでおきたかった!」と痛感しています、、。もし、C#について学び始めたという方は是非参考にしてみてください!(2020年7月に出版された新書です(^^)
他にも、C#関連の記事を書いていますので是非参考にしてください!
【C#入門】クラスとは?役割とVisual Studioでの作り方を紹介
【C#入門】インスタンスとコンストラクタとは?
【C#入門】カプセル化とは?アクセス修飾子の種類と使い方を紹介
【C#入門】プロパティとは?SetとGetを使った書き方をご紹介
【C#入門】継承とは?役割と使い方をご紹介
【C#入門】Collection(コレクション)とは?LIST型の使い方をご紹介