Я новичок в java, и я не понимаю, как использовать интерфейс компаратора.
У меня есть ArrayList
of Item
в классе Inventory
и Item
.
В классе Item
я написал:
public class Item implements Comparator<Item> {
//stuff
...
@Override
public int compare(Item a, Item b) {
if (a.getID().compareToIgnoreCase(b.getID())>0)
return 1;
else if (a.getID().compareToIgnoreCase(b.getID())<0)
return -1;
else
return 0;
}
}
Метод getID() просто дает идентификатор, который я должен использовать для алфавита элементов.
Я не уверен, что это правильно, это заставило меня добавить аннотацию @Override
, я не уверен, почему. Также я написал интерфейс, который просто говорит:
public interface Comparator<Item>
{
int compare(Item a, Item b);
}
Я не уверен в этом. Также как я могу реализовать этот метод для сортировки arraylist, созданного в классе инвентаризации?
Спасибо, если мой вопрос не имеет смысла или нуждается в разъяснении, просто дайте мне знать.