Function
package com.decoo.test.function;
import java.util.Map;
import java.util.function.*;
public class FunctionTest {
public static void main(String[] args) {
// Supplier 没有输入,只有输出
Supplier<String> supplier = () -> "supplier demo";
System.out.println(supplier.get());
//Consumer 只有输入, 没有输出
Consumer<String> consumer = i -> System.out.println("consumer demo" + i);
consumer.accept("test");
//Function 输入T 输出R
Function<Integer,String> function = i -> i + "---function demo";
System.out.println(function.apply(22));
//UnaryOperator 输入输出都相同 T
UnaryOperator<Integer> unaryOperator = i -> i * i;
System.out.println("unaryOperator demo" + unaryOperator.apply(3));
//BiFunction 输入T,R 输出U
BiFunction<String,String, Map> biFunction = (i, j) -> Map.of(i, j);
System.out.println("biFunction demo" + biFunction.apply("name", "lisa"));
//Predicate 输入T 输出Boolean
Predicate<String> predicate = i -> i.isEmpty();
System.out.println("predicate demo" + predicate.test("sss"));
}
}