Java 8 之 Lambdas 数组排序

Lambda表达式(也称为闭包)是整个Java 8发行版中最受期待的在Java语言层面上的改变,Lambda允许把函数作为一个方法的参数(函数作为参数传递进方法中),或者把代码看成数据:函数式程序员对这一概念非常熟悉。在JVM平台上的很多语言(Groovy,Scala,……)从一开始就有Lambda,但是Java程序员不得不使用毫无新意的匿名类来代替lambda。

什么是Lambda表达式

Lambda 是一个匿名函数,我们可以把 Lambda 表达式理解为是一段可以传递的代码(将代码像数据一样进行传递)。可以写出更简洁、更灵活的代码。作为一种更紧凑的代码风格,使 Java的语言表达能力得到了提升。

Comparator 排序

在Java中,最常用的方法就是 使用 Arrays数组工具类 Sort方法进行排序。

Java 8 之 Lambdas 数组排序_第1张图片

Java 8 之 Lambdas 数组排序_第2张图片

当然也可以 指定 排序 条件:

Java 8 之 Lambdas 数组排序_第3张图片

Lambda 排序

Java 8 之 Lambdas 数组排序_第4张图片

Java 8 之 Lambdas 数组排序_第5张图片

所以用 lambdas 一句话就可以搞定了。

Arrays.sort(players,(String s1,String s2)->(s1.compareTo(s2)));

总结

Lambda 表达式在Java 语言中引入了一个新的语法元 素和操作符。这个操作符为 “->” , 该操作符被称为 Lambda 操作符或剪头操作符。

它将 Lambda 分为 两个部分: 

左侧:指定了 Lambda 表达式需要的所有参数 

右侧:指定了 Lambda 体,即 Lambda 表达式要执行的功能。

你可能感兴趣的:(JDK,Lambdas,数组排序,Java8)