- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
它只是不起作用 ):这是我的 toString() 方法。
public String toString() {
String s= "[";
DoublyLinkedList<E>.ListNode next= new ListNode(null,null,null);
next= head.successor();
while(next!=tail){
s+= next.getValue()+ ", ";
next=next.successor();
}
s +="]";
// Write this method body and remove this comment
return s;
}
它告诉我在“next= head.successor()”有一个空指针错误
这是 ListNode 类:
/** An instance is a node of this list. */
public class ListNode {
/** Predecessor of this node on the list (null if the list is empty). */
private ListNode pred;
/** The value of this node. */
private E value;
/** Successor of this node on the list. (null if the list is empty). */
private ListNode succ;
/** Constructor: an instance with predecessor p (p can be null),
* successor s (s can be null), and value v. */
private ListNode(ListNode p, ListNode s, E v) {
pred= p;
succ= s;
value= v;
}
/** Return the value of this node. */
public E getValue() {
return value;
}
/** Return the predecessor of this node in the list (null if this node
* is the first node of this list). */
public ListNode predecessor() {
return pred;
}
/** Return the successor of this node in the list (null if this node
* is the last node of this list). */
public ListNode successor() {
return succ;
}
和双链表...
/** An instance is a doubly linked list. */
public class DoublyLinkedList<E> {
private ListNode head; // first node of linked list (null if none)
private ListNode tail; // last node of linked list (null if none)
private int size; // Number of values in linked list.
/** Constructor: an empty linked list. */
public DoublyLinkedList() {
}
/** Return the number of values in this list. */
public int size() {
return size;
}
/** Return the first node of the list (null if the list is empty). */
public ListNode getHead() {
return head;
}
/** Return the last node of the list (null if the list is empty). */
public ListNode getTail() {
return tail;
}
/** Return the value of node e of this list.
* Precondition: e must be a node of this list; it may not be null. */
public E valueOf(ListNode e) {
return e.value;
}
最佳答案
你应该实现 Iterable
为您的 list 。
public class DoublyLinkedList<E> implements Iterable<E> {
...
public Iterator<E> iterator() {
// TODO: return a new iterator here.
}
}
然后执行一个Iterator<E>
作为内部类的列表。有关示例,请参见 Java 源代码:
这是循环访问列表的成熟模式。然后,您不必担心会收到 while
。向右循环,相反,您可以只使用标准 for
每个循环:
for (E item: this) {
}
关于java - DoublyLinkedList 的 toString(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18965591/
嘿,我有一个 DoublyLinkedList,任何时候我都尝试调用头文件中的方法。我调用统计列表。因为我已经声明了 DoublyLinkedList,正如您在我的代码中看到的那样: DoublyLi
我正在尝试添加一个 Stats 对象,该对象将是具有名字、姓氏、级别和经验的玩家。我在 Stats.h 中进行了设置。但我的问题主要是我不知道如何将统计播放器添加到列表中。这是我正在尝试做的事情: S
我正在制作一个双向链表。错误与我的 Remove 方法有关。我想不通。有谁知道吗? 这里是哪里出错了? Error 1 error C2027: use of undefined type 'Doub
我试图修复一个代码,它是一个 LinkedList。任务是删除列表的最后 X 个元素。我用 RemoveRange 尝试过,但 VS 不接受我的解决方案并说 RemoveRange 不存在。 var
它只是不起作用 ):这是我的 toString() 方法。 public String toString() { String s= "["; DoublyLinkedList.Lis
我正在尝试删除 C++ 中的重复项目。我已经设法通过使用对象默认构造函数将对象设置为 = null。但我无法将其从列表中完全删除。此代码还删除了两个对象,而不仅仅是一个。这是另一个问题的重新发布。我的
我目前正在尝试创建一个使用尾递归的双向链表。 我的 addItem 已完全正常工作。我的 InsertItem 在指定索引处成功插入和项目。但是它会删除那里的任何项目并且不会移动所有数据。当尝试在索引
我正在尝试了解如何 DoublyLinkedList.java作为普林斯顿版本。请点击超链接以获取详细信息。 但是时间久了,我还有两个问题想完全理解这个实现。 问题 1:remove 方法中的 if-
基本上,当我的列表中只插入一个 Player 对象时,我的打印函数将打印出内容。但是当我插入另一个对象时,它会添加它,但插入的第一个元素已被覆盖。我已经测试了我的插入和附加功能,但我不认为它与这些功能
我最近遇到了一些 PHP-SPL 数据结构,我一直在查看第一个,the doubly linked list .我大概知道什么是链表,现在我可以看到什么是双向链表,但我的问题是:我到底要用它做什么?
我目前正在为我的 DLList 程序编写 deleteAt() 函数,尽管为了尝试删除堆栈中间的一个节点,代码的行为不可预测,我不知道为什么? 对于先前创建的包含数字的列表: 2、3、9、8、7、4
我正在用 C++ 编写一个 DoublyLinkedList,我为这个实现编写的测试之一以一种奇怪的方式失败了。 我创建了一个 StubClass 来填充我的 DoublyLinkedList,它的定
我正在尝试用 Java 实现 Knuth 的 Dancing Links 算法。 根据 Knuth 的说法,如果 x 是一个节点,我可以通过 C 中的以下操作完全取消链接节点: L[R[x]] set
我是一名优秀的程序员,十分优秀!