所以對於我的班級,我必須編寫自己的鏈接列表。我主要是不懂,但老師寫的MYNODE類通用鏈接列表
public class MyNode<E extends Comparable<E>> {
E element;
MyNode<E> next;
public MyNode(E item) {
element = item;
next = null;
}
}
而且我們是爲了使一個類來運行它,並讓它運行這個程序
public class TestLinkedList {
public static void main(String[] args) {
MyLinkedList<String> L = new MyLinkedList<String>();
L.add("Browns");
L.add("Ravens");
L.add("Steelers");
L.add("Bengals");
L.add("Chargers");
System.out.println(L);
System.out.println(L.find("Ravens") ? "Found Ravens" : "Did not find Ravens");
System.out.println(L.find("Giants") ? "Found Giants"
: "Did not find Giants");
L.insertElementBefore("Steelers", "Colts");
L.delete("Chargers");
System.out.println("Result after deleting Chargers: " + L);
}
}
但我不明白爲什麼節點延伸可比。我發現很多例子,其中節點只是節點E,但沒有這樣的,我只是難以理解如何使用它來寫我的鏈表。
這是用'MyLinkedList.find()'實現的嗎?該方法是否使用Comparable接口? – PeterK 2014-10-10 14:44:27
通常,當您想在列表上進行比較操作時,可以進行比較。由於MyNode對象是用戶定義的,因此Java無法輕鬆比較它們。 例如:Java知道如何比較數字的'大於'。它知道5大於3,但它如何知道MyNodeA比MyNode B大。 – nbz 2014-10-10 14:44:42
查看本教程,瞭解爲什麼要擴展可比接口 - http://www.java-tips.org/java- se-tips/java.lang/how-to-use-comparable-interface.html – nbz 2014-10-10 14:45:30