本家はこちら
関数インターフェースのPredicateとかFunctionがあるのであんまり使わないけど、引数とか3つ以上のものはないのでつくる必要がある。
基本的に抽象メソッドを1つしかもっていなければOK。defaultメソッドはいくつもっていてもOKです。(ラムダ式のときに何を使うかわからなくなっちゃうからかなと)
@FunctionalInterface
interface SampleInterface {
boolean filter(String a);
}
こんな感じでカンタンに作れる
使うときはこんな感じでカンタンに使える。
SampleInterfacle sampleFilter = s -> "a".equals(s);
sampleFilter.filter("a");
なんかもうカンタン過ぎますね
ちなみに引数3つは、こんな感じ
@FunctionalInterface
interface SampleInterface {
boolean filter(String a, String b, String c);
}
SampleInterfacle sampleFilter = (s, t , u) -> "a".equals(s);
sampleFilter.filter("a","b","c");
こんな感じで使える。なんかもうカンタン過ぎますね。みんなもっと使いましょう!