I use a sorted list using linked lists. My node class is as follows:
public class Node<E>{ E elem; Node<E> next, previous; }
In the sorted class of the class, I have an add method where I need to compare common objects based on their implementation of the compareTo () methods, but I get this syntax error "The compareTo (E) method is undefined for type E". I tried to implement the compareTo method in Node, but then I canβt name any object method, because E is a generic type. Here is the incomplete body of the add (E elem) method.
public void add(E elem) { Node<E> temp = new Node<E>(); temp.elem = elem; if( isEmpty() ) { temp.next = head; head.previous = temp; head = temp; counter++; }else{ for(Node<E> cur = head; cur.next != null ; cur= cur.next) { **if(temp.elem.comparTo(cur.elem)) {**
Here is one of the objects implementing the compareTo method
public class Patient implements Comparable<Patient>{ public int compareTo(Patient that) { return (this.getPriority() <= that.getPriority() ? 1 : 0 ); } }
source share