Java 中 Lambda 表达式的类型推断?
类型推断表示任何表达式的数据类型。例如,编译器可以自动理解方法的返回类型或参数类型。参数列表中的类型可以省略,因为 java 已经知道函数式接口的单一抽象方法的预期参数的类型。
语法
(var1, var2 …) -> { method body }
在下例中,我们可以按最后一个字符对String[] 数组进行排序。
示例
import java.util.Arrays; public class TypeInferencingLambdaTest { public static void main(String[] args) { String[] names = {"Raja", "Jai", "Adithya", "Surya", "Chaitanya", "Ravi", "Krishna"}; Arrays.sort(names, (s1, s2) -> { // Lambda Expression return (s1.charAt(s1.length()-1) - s2.charAt(s2.length()-1)); }); for(String str : names) { System.out.println(str); } } }
输出
Raja Adithya Surya Chaitanya Krishna Jai Ravi
广告