JavaでのLambdaの使い方は何ですか?
Javaにおいて、ラムダ式は関数型インタフェースの実装を簡略化するために使用されます。ラムダ式は名前のない無名関数で、パラメータリスト、関数本体、そして可能な戻り値の型があります。ラムダ式は、関数型インタフェースの実例を実装するために匿名内部クラスを使用する代わりに使用することができます。
一般的なLambda式の構文は以下の通りです:
(パラメータリスト)→ { ラムダ本体 }
パラメーターリストは、0個以上のパラメーターを含むことができるのに対し、ラムダの本体は式またはコードブロックで構成される、ラムダ式の関数部分です。
ラムダ式は、関数型インターフェースに使用できます。つまり、1つの抽象メソッドだけを持つインターフェースです。ラムダ式を使うと、そのインターフェースのメソッドをより簡潔に実装でき、メソッド呼び出しの際にラムダ式をパラメータとして直接渡すことができます。
たとえば、抽象メソッドcalculateを持つ関数インターフェースCalculatorがあると仮定し、このインターフェースのメソッドをlambda式で実装することができます。
interface Calculator {
int calculate(int a, int b);
}
public class Main {
public static void main(String[] args) {
// 使用lambda表达式实现calculate方法
Calculator add = (a, b) -> a + b;
Calculator subtract = (a, b) -> a - b;
// 调用calculate方法
System.out.println(add.calculate(5, 3)); // 输出:8
System.out.println(subtract.calculate(5, 3)); // 输出:2
}
}
上記の例では、Calculatorインターフェースのcalculateメソッドをlambda式を使って実装し、足し算と引き算がそれぞれ実装されました。そして、メインメソッドでは、calculateメソッドを呼び出して対応する計算を実行し、結果を出力しています。