接口中的代码都是使用的优化的Lambda表达式
Consumer接口:
import java.util.function.Consumer;
public class DemoConsumer {
private static void consumeString(Consumer<String> function) {
function.accept("Hello");
}
public static void main(String[] args) {
consumeString(s -> System.out.println(s));
}
}
Predicate接口:
import java.util.function.Predicate;
public class DemoPredicate {
public static void method(Predicate<String> predicate) {
boolean length= predicate.test("HelloWorld");
System.out.println(length);
}
public static void main(String[] args) {
method(a->a.length()>5);
}
}
Function接口:
import java.util.function.Function;
public class DemoFunction {
public static void change(Function<String, Integer> fun) {
int a = fun.apply("10");
System.out.println(a);
}
public static void main(String[] args) {
change(s -> Integer.parseInt(s));
}
}