将值分配给Java中的变量

时间:2018-08-05 09:43:24

标签: java memory memory-management

我正试图了解其工作原理

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分配给当前节点中的下一个节点的那一点上,该节点本身不应该是一个全新的节点。但由于某种原因它附在列表上?

1 个答案:

答案 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 }}">&laquo;</a></li> {% else %} <li class="page-item disabled"><span class="page-link" >&laquo;</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 }}">&raquo;</a></li> {% else %} <li class="page-item disabled"><span class="page-link" >&raquo;</span></li> {% endif %} </ul> {% endif %} 之后,我们到达了最后一个节点。因此称为currentNode.getNext() == null