我试图弄清楚它是如何工作的。我有一种感觉,我忽略了这一点,但我有这个代码。
newNode.setNextNode(root);
root = newNode;
return true;
节点类的代码
public class Node <T extends Comparable <T>> implements Comparable<T>{
private Node nextNode = null;
private T data;
public Node(T data){
this.data = data;
}
public boolean setNextNode(Node nextNode){
this.nextNode = nextNode;
return true;
}
public Node next(){
return nextNode;
}
public T getData(){
return data;
}
@Override
public String toString() {
return data.toString();
}
@Override
public int compareTo(T o) {
return getData().compareTo((T) nextNode.getData());
}
}
root现在设置为我的新节点中的一个字段。 然后做root = newNode。为什么当我做root.next它不只是给我回根?
当我做setter时它会创建一个完整的对象副本吗?因为我知道当你使一个对象等于另一个对象时,引用引用同一个对象。因此它可以改变原始对象。
如果有人能解释这将是伟大的
谢谢