ラムダ式を使用する場合、最も一般的な操作はマッチングです。ただし、インターフェースには多くの方法があり、マッチング時に混乱する友達もいます。明確にできるのは、ラムダはインターフェイスを照合できるということです。そのため、具体的な照合手順については、関連するコード例とともに以下で説明します。
1. 説明
(1) 各ラムダは、特定のインターフェイスを通じて特定の型と一致することができます。いわゆる関数型インターフェイスには、抽象メソッド宣言が 1 つだけ必要です。対応する各ラムダ式は、抽象メソッドの宣言と一致する必要があります。デフォルトのメソッドは抽象ではないため、関数インターフェイスにデフォルトのメソッドを自由に追加してください。
(2) 抽象メソッドを 1 つだけ含むインターフェイスは、ラムダ式に使用できます。定義されたインターフェイスが要件を満たすためには、インターフェイスに @FunctionalInterface のマークを付ける必要があります。 2 番目の抽象メソッドがインターフェイスで定義されている場合、コンパイラはこの注釈に気づき、例外をスローします。
2. 例
@FunctionalInterface インターフェース Converter<F, T> { T 変換(F から); } Converter<String, Integer> コンバータ = (from) -> Integer.valueOf(from); 変換された整数 = Converter.convert("123"); System.out.println(変換済み); // 123
@FunctionalInterface アノテーションが書かれていない場合でもプログラムは正しいので注意してください。
以上がJavaインターフェースでのラムダ式のマッチング方法でしたので、皆さんもこの記事でラムダ式の使い方を新たに理解できたと思いますので、学習したらすぐに実践してみてください。