【发布时间】:2016-04-15 21:40:46
【问题描述】:
我列出了Animals 如下:
ArrayList<Animal> animals = new ArrayList<Animal>();
animals.add(new Animal(1, "animal1", 50, "10 Janvier 2016", "Noir", 4, true));
animals.add(new Animal(2, "animal2", 50, "10 Janvier 2016", "Noir", 4, true));
animals.add(new Animal(3, "animal3", 50, "10 Janvier 2016", "Noir", 4, true));
animals.add(new Animal(4, "animal4", 50, "10 Janvier 2016", "Noir", 4, true));
animals.add(new Animal(5, "animal5", 50, "10 Janvier 2016", "Noir", 4, true));
我想按 ID 对 ArrayList 中的动物列表进行排序。据我所见,我必须使用比较器。
这是我到目前为止创建的......
public class ComparatorAnimal implements Comparator<Animal> {
public int compare(Animal animals.get(0), Animal animals.get(1) {
return animals.get(0).idAnimal - animals.get(1).idAnimal;
}
【问题讨论】:
-
Comperator接口实际上告诉您必须实现的方法的签名。如果您的类中没有带有此签名的方法,那么它将无法编译,我想现在就是这种情况。好吧,您不能将变量命名为animals.get(0) -
此类问题已被多次询问和回答。这是一个重复的问题。