我在使用Java描述队列的power point上找到了这个例子。 整个代码都很好,直到我得到Add方法,它为队列添加了新的Node或新值,这里是add方法代码:
public void add(String value ){
Node node = new Node(value, null);
if(isEmpty())
front = rear = node;
else {
//I don't understand these two lines
rear.next = node; //
rear = node; //
}
}
我无法理解上面两行rear.next=node
和rear =node
,我们为同一个Node对象分配了下一行和当前的内容吗?
这是类节点的代码:
class Node {
String value;
Node next;
public Node(String value, Node next) {
this.value = value;
this.next = next;
}
public Node(String value) {
this.value = value;
}
}
答案 0 :(得分:1)
将节点附加到队列的末尾。或者换句话说,结束后的节点应该是新节点:
rear.next = node;
现在我们已经将一个节点附加到末尾,最后一个节点是不同的,而不是我们追加之前的节点。新的最后一个节点是我们刚刚添加的节点:
rear = node;