У меня есть класс под названием ListNode
, который работает как список. Используя этот класс, я хочу создать список объектов журнала. В моем классе MagazineList
я хочу отредактировать метод добавления, поэтому, когда я вставляю Magazine
, они будут отсортированы в алфавитном порядке. Как я могу это сделать?Как использовать метод compareTo() для сравнения объектов в списке?
Мой ListNode
класс:
public class ListNode {
private Object value;
private ListNode next;
//intializes node
public ListNode (Object initValue, ListNode initNext) {
value = initValue;
next = initNext;
}
//returns value of node
public Object getValue() {
return value;
}
//returns next reference of node
public ListNode getNext() {
return next;
}
//sets value of node
public void setValue (Object theNewValue) {
value = theNewValue;
}
//sets next reference of node
public void setNext (ListNode theNewNext) {
next = theNewNext;
}
}
мой MagazineList
класса метод дополню:
//when instantiated, MagazineList's list variable is set to null
public void add (Magazine mag) {
ListNode node = new ListNode (mag, null);
ListNode current;
if (list == null)
list = node;
else {
current = list;
while (current.getNext() != null)
current = current.getNext();
current.setNext(node);
}
}
Я использовал этот метод, чтобы сравнить Magazines
в Magazine
классе:
//compares the names (Strings) of the Magazines.
public int compareTo(Magazine mag2) {
return (title).compareTo(mag2.toString());
}
Спасибо за совет! Я должен выполнить его с этим конкретным внедрением, однако ... – nichi
Я обновил, чтобы ответить, чтобы использовать вашу реализацию. – Mustafa
Большое вам спасибо! Вы очень помогли :) – nichi