-7

嗨,我是 Java 新手,我有一个 ArrayList[object1, object2...]

每个对象都有一个getNumber()方法,它返回一个 int 数

如何通过比较 getNumber() 方法的返回值对 ArrayList 进行排序?

4

3 回答 3

1

在 Arraylist 对象上使用比较器或实现可比较

http://www.mkyong.com/java/java-object-sorting-example-comparable-and-comparator

上面的链接应该有你需要的一切。

于 2013-05-30T04:02:54.073 回答
1

创建您的比较器

// 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());
于 2013-05-30T04:12:57.757 回答
0

您应该使用 Comparator 和 Collections.sort() 确保您存储在 ArrayList 中的对象的equals()hashCode()方法被正确覆盖并遵守 hashCode 协定。

您可以查看这篇文章以了解更多详细信息。

于 2013-05-30T04:04:09.803 回答