3
以下は 4大関数型インターフェース を、 1つのクラス内・1つの main 関数内 で使うサンプルです。
Java
import java.util.function.Supplier;
import java.util.function.Consumer;
import java.util.function.Predicate;
import java.util.function.Function;
public class FunctionalInterfaceSample {
public static void main(String[] args) {
// 1. Supplier<T>
// 引数なし、戻り値あり
Supplier<String> supplier = () -> "Java Gold";
String text = supplier.get();
System.out.println("Supplier: " + text);
// 2. Consumer<T>
// 引数あり、戻り値なし
Consumer<String> consumer = value -> System.out.println("Consumer: " + value);
consumer.accept(text);
// 3. Predicate<T>
// 引数あり、戻り値 boolean
Predicate<String> predicate = value -> value.length() >= 5;
boolean result = predicate.test(text);
System.out.println("Predicate: " + result);
// 4. Function<T, R>
// 引数あり、戻り値あり
Function<String, Integer> function = value -> value.length();
int length = function.apply(text);
System.out.println("Function: " + length);
}
}
実行結果
覚え方