C#のラムダ式とは?「=>」演算子の基本構文と実用例を解説
ラムダ式とは
C#におけるラムダ式(lambda expression)は、処理内容を簡潔に記述するための無名関数の一種です。メソッド名を持たないインライン処理として定義でき、デリゲートや式木(expression tree)に代入できます。LINQなどの場面で特に活躍し、モダンなC#プログラミングには欠かせない機能となっています。
「=>」演算子の意味と読み方
ラムダ式では、式の中に「=>」というトークンを使用します。この記号は「goes to(〜へ渡す)」と読まれ、左辺の入力パラメータを受け取り、右辺の式またはステートメントブロックへ処理を渡す役割を担います。ラムダ式を宣言する際に必ず登場する重要な演算子です。
基本構文
(入力パラメータ) => 式またはステートメントブロック
サンプル:リストから50より大きい要素を検索する
ここでは、リストの中から50より大きい値が最初に出現するインデックスを、ラムダ式を使って検索してみましょう。List.FindIndexメソッドの引数として「x => x > 50」というラムダ式を渡すことで、「各要素xが50より大きいかどうか」という判定条件をその場で簡潔に定義できます。
コード例
using System;
using System.Collections.Generic;
class Demo {
static void Main() {
List<int> list = new List<int> { 44, 6, 34, 23, 78 };
int res = list.FindIndex(x => x > 50);
Console.WriteLine("Index: " + res);
}
}実行結果
Index: 4
リスト { 44, 6, 34, 23, 78 } の中で、50より大きい最初の要素は78です。インデックスは0から始まるため、その位置は4となり、結果として「Index: 4」が出力されます。
まとめ
ラムダ式を使えば、名前のない小さな処理をその場で定義でき、コードを大幅に簡潔にできます。FindIndexのほかにも、WhereやSelectといったLINQメソッドと組み合わせることで、条件指定やデータ変換を直感的かつ読みやすく記述できるようになります。まずは簡単な条件判定から、ラムダ式の活用に慣れていくのがおすすめです。
-
C#のラムダ式とは?「=>」演算子の基本と使い方を実例付きで解説
C#におけるラムダ式は、処理の内容を簡潔に記述するためのパターンです。式の中では => というトークンが使われ、これは「goes to(ゴーズ・トゥ)」演算子と呼ばれ、「〜へ渡す」という意味で読みます。ラムダ式を宣言するときにこの演算子を使用します。ラムダ式の基本的な書き方ラムダ式は「引数 => 式またはステートメント」という形式で記述します。左辺に入力パラメータ、右辺にその処理内容や戻り値となる式を書きます。デリゲートやLINQメソッドと組み合わせることで、コードを非常にすっきりと表現できるのが特徴です。C#でのラムダ式の使用例以下は、リストから条件に合う要素のインデックスを検索
-
Pythonのラムダ式とfilter()関数を実例でわかりやすく解説
この記事では、Python 3.x(およびそれ以前のバージョン)におけるラムダ式と filter() 関数について学びます。どちらの機能もPythonの標準ライブラリに組み込まれており、追加のインポートなしですぐに利用できます。 ラムダ式とは? ラムダ式を使うと、インライン関数(その場で定義する小さな関数)を簡潔に記述できます。ラムダ式は、キーワード lambda の後にカンマ区切りの引数リストと、それらの引数を使って評価される式を続けて記述します。 構文 lambda 引数: 式 戻り値: 引数を式に代入して計算された値が返されます。 ラムダ式には関数名を付けないため、「匿名関数(無名関数)