我正试图了解其工作原理
public class LinkedListMultiset<T> extends Multiset<T> {
private Node<T> head;
public LinkedListMultiset() {
this.head = null;
} // end of LinkedListMultiset()
public void add(T item) {
Node<T> node = new Node(item);
if (head == null) {
head = node;
} else {
Node<T> currentNode = head;
while (currentNode.getNext() != null) {
//-----------------------------------
currentNode = currentNode.getNext();
//-----------------------------------
}
currentNode.setNext(node);
}
}
}
在将currentNode分配给当前节点中的下一个节点的那一点上,该节点本身不应该是一个全新的节点。但由于某种原因它附在列表上?
答案 0 :(得分:0)
此代码尝试遍历列表,直到最后一个节点。 {% if trainers.has_other_pages %}
<ul class="pagination justify-content-center" style="margin:20px 0">
{% if trainers.has_previous %}
<li class="page-item"><a class="page-link" href="?page={{ trainers.previous_page_number }}">«</a></li>
{% else %}
<li class="page-item disabled"><span class="page-link" >«</span></li>
{% endif %}
{% for i in trainers.paginator.page_range %}
{% if trainers.number == i %}
<li class="page-item active"><span class="page-link">{{ i }} <span class="sr-only">(current)</span></span></li>
{% else %}
<li><a class="page-link" href="?page={{ i }}">{{ i }}</a></li>
{% endif %}
{% endfor %}
{% if trainers.has_next %}
<li class="page-item"><a class="page-link" href="?page={{ trainers.next_page_number }}">»</a></li>
{% else %}
<li class="page-item disabled"><span class="page-link" >»</span></li>
{% endif %}
</ul>
{% endif %}
之后,我们到达了最后一个节点。因此称为currentNode.getNext() == null
。