函数式编程 - 类型推断
类型推断是一种技术,通过该技术,编译器可以自动推断传递的参数类型或方法的返回类型。从 Java 8 开始,Lambda 表达式主要使用类型推断。
请参阅下面的示例以了解类型推断。
示例 - 类型推断
public class FunctionTester {
public static void main(String[] args) {
Join<Integer,Integer,Integer> sum = (a,b) -> a + b;
System.out.println(sum.compute(10,20));
Join<String, String, String> concat = (a,b) -> a + b;
System.out.println(concat.compute("Hello ","World!"));
}
interface Join<K,V,R>{
R compute(K k ,V v);
}
}
输出
30 Hello World!
lambda 表达式最初将每个参数及其返回类型视为 Object,然后据此推断数据类型。在第一种情况下,推断的类型为 Integer,在第二种情况下,推断的类型为 String。