Function 是一个接收一个参数并返回一个任意类型值的函数式接口

1
2
3
4
5
public static void main(String[] args) {
Function<String, Integer> function = (s) -> s.length();
Integer result = function.apply("foo");
System.out.println(result); // 3
}

使用 Function 提供的默认方法可以组合多个 Function 一起工作

1
2
3
4
5
6
public static void main(String[] args) {
Function<String, Integer> function1 = (s) -> s.length();
Function<Integer, Boolean> function2 = (i) -> i > 5;
Boolean result = function1.andThen(function2).apply("foo");
System.out.println(result); // false
}

andThen 是比较常见的一种用法工作时先执行 function1 再执行 function2