これまで、メソッド、クラス、インスタンス、カプセル化、プロパティ、継承、オーバーライド、コレクションなどを順に紹介してきました。今回は、「ラムダ式」を紹介させていただきます。
【C#入門】クラスとは?役割とVisual Studioでの作り方を紹介
【C#入門】インスタンスとコンストラクタとは?
【C#入門】カプセル化とは?アクセス修飾子の種類と使い方を紹介
【C#入門】プロパティとは?SetとGetを使った書き方をご紹介
【C#入門】継承とは?役割と使い方をご紹介
【C#入門】Collection(コレクション)とは?LIST型の使い方をご紹介
ラムダ式とは
ラムダ式とはラムダ計算で使う式のことで、ラムダ計算とは計算モデルの一つです。少しイメージが湧かないかもしれませんが、「戻り値を返す短いメソッドを、より簡潔に書く方法」と覚えていれば良いかもしれません。C#だけではなくて、JavaやC++などでも利用されています。
戻り値やメソッドについて復習したい方はこちらの記事を参考にしてください^^
今回は、ラムダ式の中でもLINQで利用するときの書き方をメインでご紹介させていただきます。LINQについては、別の記事で紹介させていただきますが、データにアクセスするときに使われる機能です。
SQLのように、「ファイルの中から今日の販売実績を抜き出して!」というように命令することができます。
その命令の中で、ラムダ式を併用することがかなり多いので、今回は紹介させていただきます!
ラムダ式の作り方
引数が一つのメソッド
それでは、引数が一つのメソッドをラムダ式にする方法を紹介します。まず、引数に2を足して返すメソッドがあります。(staticは省略しています)
このメソッドをラムダ式で書くと、次のようになります。
引数が二つのメソッド
続いて、引数が二つの場合のメソッドです。aとbを渡して合計値を戻り値として返しています。
これをラムダ式で書くと次のようになります。
引数を","でつないで()で囲み、右辺は戻り値の計算式を書いています。
int 型以外の戻り値を持つメソッド
戻り値には、どの型でも指定することができます。例えば、falseとtrueを返すbool型を利用したメソッドを書いてみます。
ラムダ式に書き換えると次のようになります。
☆LINQの説明はこちら
☆ラムダ式を使ったLINQ・メソッド型の紹介はこちら。合わせて読むことをおすすめします!
ひとこと
いかがでしたでしょうか。ラムダ式はメソッドの引数と戻り値に焦点を当てた書き方だということが分かったかと思います。
今回の説明は「確かな力が身につくC# 「超」入門」を参考にさせていただきましたが(例題はオリジナルです)、「もっと前から読んでおきたかった!」と痛感しています、、。もし、C#について学び始めたという方は是非参考にしてみてください!(2020年7月に出版された新書です(^^)
他にも、C#関連の記事を書いていますので是非参考にしてください!
【C#入門】クラスとは?役割とVisual Studioでの作り方を紹介
【C#入門】インスタンスとコンストラクタとは?
【C#入門】カプセル化とは?アクセス修飾子の種類と使い方を紹介
【C#入門】プロパティとは?SetとGetを使った書き方をご紹介
【C#入門】継承とは?役割と使い方をご紹介
【C#入門】Collection(コレクション)とは?LIST型の使い方をご紹介