嗨,我是 Java 新手,我有一个 ArrayList[object1, object2...]
每个对象都有一个getNumber()
方法,它返回一个 int 数
如何通过比较 getNumber() 方法的返回值对 ArrayList 进行排序?
嗨,我是 Java 新手,我有一个 ArrayList[object1, object2...]
每个对象都有一个getNumber()
方法,它返回一个 int 数
如何通过比较 getNumber() 方法的返回值对 ArrayList 进行排序?
在 Arraylist 对象上使用比较器或实现可比较
http://www.mkyong.com/java/java-object-sorting-example-comparable-and-comparator
上面的链接应该有你需要的一切。
创建您的比较器:
// Here T is your class name
public class Test implements Comparator<T> {
@Override
public int compare(T o1, T o2) {
return (o1.getNumber() - o2.getNumber());
}
}
并将其传递给 Collections.sort:
Collections.sort(yourList, new Test());
您应该使用 Comparator 和 Collections.sort() 确保您存储在 ArrayList 中的对象的equals()和hashCode()方法被正确覆盖并遵守 hashCode 协定。
您可以查看这篇文章以了解更多详细信息。