はじめに
ラムダ式、メソッド参照を用いることで簡潔なコード記述を可能になり、直感的なプログラミングが可能になります。
関数型インタフェース
コード比較
今回は関数型インタフェースSupplierを用いた”Hello world"をコンソール出力するサンプルコードを比較する
従来のコード
抽象メソッドについては、オーバーライドによって中身の実装を行います。
@FunctionalInterface
interface Greeting {
String getGreeting();
}
public class App {
public static void main(String[] args) {
Greeting greeting = new Greeting() {
@Override
public String getGreeting() {
return "Hello World!";
}
};
System.out.println(greeting.getGreeting());
}
}
lambdaを用いたコード
1つの抽象メソッドを持つインタフェースではラムダ式を利用可能となります。
ラムダ式では中身の実装については、下記のように簡潔になります。
@FunctionalInterface
interface Greeting {
String getGreeting();
}
public class App {
public static void main(String[] args) {
Greeting greeting = () -> "Hello World!";
System.out.println(greeting.getGreeting());
}
}
まとめ
ラムダ式は、簡潔なコード記述を可能にし、直感的なコード記述が可能になります。