ラムダ式には、コード行を保存する以外の用途がありますか?
簡単に解決できない問題を解決するラムダの特別な機能はありますか?私が見た典型的な使用法はこれを書く代わりに:
Comparator<Developer> byName = new Comparator<Developer>() {
@Override
public int compare(Developer o1, Developer o2) {
return o1.getName().compareTo(o2.getName());
}
};
ラムダ式を使用してコードを短縮できます。
Comparator<Developer> byName =
(Developer o1, Developer o2) -> o1.getName().compareTo(o2.getName());
Comparator.comparing(Developer::getName)
(o1, o2) -> o1.getName().compareTo(o2.getName())