本示例演示如何使用 Java 中的 Lambda 表达式对一个 Double 数组进行从大到小的排序,并打印排序后的结果。

double[] arr = {0.6, 0.65, 0.78, 0.4, 0.9, 0.55};
Arrays.sort(arr, (a, b) -> Double.compare(b, a));
System.out.println(Arrays.toString(arr));

代码解析:

  1. 创建 Double 数组: double[] arr = {0.6, 0.65, 0.78, 0.4, 0.9, 0.55}; 定义一个包含 double 类型元素的数组 arr
  2. 使用 Arrays.sort() 方法排序: Arrays.sort(arr, (a, b) -> Double.compare(b, a)); 使用 Arrays.sort() 方法对数组 arr 进行排序,第二个参数是一个 Lambda 表达式,它定义了排序规则。
    • Lambda 表达式 (a, b) -> Double.compare(b, a) 接受两个 double 类型的参数 ab,并返回 Double.compare(b, a) 的结果。Double.compare(b, a) 用于比较 ba 的大小,如果 b 大于 a,则返回一个正数;如果 b 小于 a,则返回一个负数;如果相等,则返回 0。由于 Arrays.sort() 方法默认是升序排序,因此这里通过交换 ab 的位置来实现降序排序。
  3. 打印排序后的结果: System.out.println(Arrays.toString(arr)); 使用 Arrays.toString() 方法将排序后的数组转换为字符串并打印到控制台。

运行代码后,控制台将输出以下结果:

[0.9, 0.78, 0.65, 0.6, 0.55, 0.4]

该示例展示了如何使用 Java 中的 Lambda 表达式来简洁高效地对 Double 数组进行降序排序。

Java 使用 Lambda 表达式对 Double 数组进行降序排序

原文地址: https://www.cveoy.top/t/topic/qg0b 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录