Я сделал список Animal
с следующим образом:Отсортировать ArrayList с несколькими объектами
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));
Я хочу, чтобы отсортировать мой список животных в ArrayList
их ID. Из того, что я видел, я должен использовать компаратор.
Это то, что я создал до сих пор ...
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;
}
И дело? – user3707125
Интерфейс 'Comperator' фактически сообщает вам подпись метода, который вам нужно реализовать. Если у вас нет метода с этой сигнатурой внутри вашего класса, тогда он не будет компилироваться, и я думаю, что это так. Ну и вы не можете называть свои переменные типа «animals.get (0)» – SomeJavaGuy
Этот вопрос задавался и отвечал несколько раз. Это повторяющийся вопрос. – OPK