sorted(Comparator.comparing
时间: 2023-11-02 07:01:54 浏览: 98
Sort(ICompareable,ICompare)
sorted(Comparator.comparing)是Java中用于自定义排序的方法之一。它可以通过指定一个lambda表达式或方法引用来定义排序的规则。lambda表达式指定了根据对象的某个属性进行比较,而方法引用则指定了根据对象的某个方法进行比较。比较器会根据指定的规则对集合中的元素进行排序。
在上面的引用中,给出了两种使用sorted(Comparator.comparing)方法进行自定义排序的示例。
方法一:
```
list = list.sort((a, b) -> {
Double d1 = a.getPQI();
Double d2 = b.getPQI();
return d1.compareTo(d2);
});
```
上述代码中,通过比较对象a和b的属性PQI的大小,实现了按照该属性从小到大进行排序。
方法二:
```
list = list.stream()
.sorted(Comparator.comparing(p -> p.getPQI()))
.collect(Collectors.toList());
```
上述代码使用了Java 8中的Stream API来进行排序。使用Comparator.comparing方法指定了根据对象的getPQI方法进行比较,并通过collect方法将排序结果收集到一个新的List中。
阅读全文