добавление в связанный список

Мне было интересно, как вообще выполняется цикл while. поскольку мы устанавливаем 'next' равным нулю, когда мы впервые объявляем его, когда оно изменится на ненулевое? а также что означает 'Node n = this; ' жадный? Имеет ли это значение для этого кода? Каждый раз, когда мы объявляем новый экземпляр объекта Node, делает ли он копию своих собственных отдельных полей из класса? Огромное спасибо! Я определенно буду признателен за ясные и простые для понимания объяснения. Еще раз спасибо =)

class Node {
    Node next = null;
    int data;
    public Node(int d) { data = d; }
    void appendToTail(int d) {
        Node end = new Node(d);
        Node n = this;
        while (n.next != null) { n = n.next; }
        n.next = end;
    }
}
6
задан AstroCB 11 February 2015 в 04:47
поделиться