0

我有自己的自定义LinkedList类,它有一个指向Node列表中第一个的指针。我现在需要创建一个DoublyLinkedList类。DoublyLinkedListthe和 the之间的唯一区别LinkedListDoublyLinkedList使用DoubleNodes 而不是Nodes。我的DoubleNode班级扩展了Node班级。

创建扩展的正确方法是什么?DoublyLinkedListLinkedList

是否必须不断地将DoubleNodes 转换为Nodes?还是有一种我只是想念的更简单的方法?

谢谢你的帮助。

4

2 回答 2

0

使用泛型- 将您的节点类型作为LinkedList.

于 2011-12-24T02:36:57.267 回答
0

好吧,我设法自己解决了这个问题。

事实证明,唯一需要改变的方法DoublyLinkedList就是add方法。这是我的DoublyLinkedList添加方法:

public void add(Object obj){
        DoubleNode newNode = new DoubleNode(obj);
        newNode.setPrev(getLast());
        super.add((Node)newNode);
    }

通过创建一个newDoubleNode 然后将其转换为 a Node,我能够保持大多数方法相同。如果我需要访问 DoubleNode 的prev指针,我可以根据需要向下转换 Node。

于 2012-01-04T23:58:15.893 回答