gpt4 book ai didi

java - 对集合进行排序的最佳方法?

转载 作者:行者123 更新时间:2023-12-01 23:06:32 27 4
gpt4 key购买 nike

我有一个代表汽车的类:

public class Car implements Comparable<Car> {
String name;
int value;
...
@Override
public int compareTo(Car o) {
return name.compareTo(o.name);
}
}

另一个代表种族的类:

public class Race {
cars = new HashSet<Car>();
...
public Collection<Car> sortByName() {
List<Car> carList = new ArrayList<>(cars);
Collections.sort(carList);
return carList;
}
}

这是我对Set进行排序的实现,我知道有一个TreeSet,但我不知道如何通过TreeSet而不是HashSet来比较它,因为如果我使用TreeSet,我无法在其中找到方法comprator(),任何人都可以帮助我如果我做得好或者做得不好如何使用TreeSet?

最佳答案

这是来自 TreeSet 的片段 javadoc :

基于 TreeMap 的 NavigableSet 实现。元素使用其自然顺序进行排序,或者通过在设置创建时提供的比较器进行排序,具体取决于使用的构造函数。

自然排序是指通过使 Car 类实现 Comparable 接口(interface)来强制执行的顺序。只需将您的汽车添加到 TreeSet 实例中,它们就会为您排序。

关于java - 对集合进行排序的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22671315/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com