不久前,我在 C 中实现了一个 LinkedList。这非常简单,因为每个 Node 都由一个值和另一个指向列表中下一个元素的指针组成。但是现在我正在尝试在 Java 中实现一个 LinkedList,因为没有指针我做了一个这样的节点:
public class MyNode{
int value;
MyNode next;
public MyNode(int i){
value = i;
next = null;
}
}
现在让我们说我有这个:
MyNode n1 = new MyNode(1);
MyNode n2 = new MyNode(2);
n1.next = n2;
MyNode n3 = new MyNode(3);
n2 = n3;
如果我这样做,我会得到什么
System.println(n1.next.value);
我会得到2还是3?我来自 C 的主要问题是我并不真正了解 java 如何在数据中移动。它是将 n2 复制到 n1 还是 n1 只是指向 n2?这一切真的很令人困惑。