我试图通过对象中的特定值对对象数组列表进行排序。做这样的事情最好的方法是什么。我应该将 Collections.sort() 与某种比较器一起使用吗?
我试图按对象在其中一个变量中保存的浮点值对对象列表进行排序。
编辑:这是我到目前为止所拥有的:
public class CustomComparator implements Comparator<Marker> {
@Override
public int compare(Mark o1, Mark o2) {
return o1.getDistance().compareTo(o2.getDistance());
}
}
错误状态:无法在原始类型 double 上调用 compareTo(double)。
是因为比较器不能返回特定类型以外的任何东西吗?
原文由 James andresakis 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果您正在寻找默认排序,则应该使用 Comparable 而不是 Comparator。
看到这里,这可能会有一些帮助—— 什么时候一个类应该是 Comparable 和/或 Comparator?
尝试这个 -