【发布时间】:2020-04-05 14:07:11
【问题描述】:
我的问题可能不清楚,所以让我举例说明一下:
Arrays.sort(arr, new Comparator<String>(){
public int compare(String a, String b){
return (b + a).compareTo(a + b);
}
});
我想使用 Comparator.comparing。我尝试了以下方法:
Arrays.sort(arr, Comparator.comparing((a, b) -> (b + a).compareTo((String)a + b)));
我收到一个错误 - lamdba 表达式中的返回类型错误。如何解决这个问题?
【问题讨论】:
-
您不会在此处使用
Comparator.comparing,因为comparing采用了一个将String元素转换为Comparable 的函数。comparing不会让您同时访问这两个元素。
标签: java arrays java-8 comparator