反映类的另一个对象的成员字段,以在Java中充当指针

反映类的另一个对象的成员字段,以在Java中充当指针,java,pointers,data-structures,nodes,Java,Pointers,Data Structures,Nodes,我有一个名为classA的类,它的成员remainingValues类型为ArrayList classA的类结构: classA { ... ArrayList<Pair<Integer,classA>> remainingValues; } 还有另一个类classB,它将classA的对象初始化为objB1,然后将remainingValues的所有值复制到其中。但是,它不能作为此新初始化对象的引用 现在,我更新objB1中的remainingVal

我有一个名为
classA
的类,它的成员
remainingValues
类型为
ArrayList

classA的类结构:

classA {
    ...
    ArrayList<Pair<Integer,classA>> remainingValues;
}
还有另一个类
classB
,它将
classA
的对象初始化为
objB1
,然后将
remainingValues的所有值复制到其中。但是,它不能作为此新初始化对象的引用

现在,我更新
objB1
中的
remainingValues
,remainingValues中的值如下:

<5, classA>
     |
     -> <4, classA>
             |
             -> <2, classA>
                      |
                      -> <3, null>
有了这段代码,我只能在第一个级别上的值为null时更新,但是如果它在另一个级别上,我就无法更新


谢谢。

你能写一些代码来说明你写这篇文章的意图,它是如何工作的,你希望它是如何工作的,等等吗?编写一个更新的代码部分。我只能在第一层找到节点时进行更新。如果它在下一个级别,它不更新。你能显示你用C++来做这项工作吗?在C++中,它有一些类似向量剩余值的东西;因此,无论在classA中保留值做了什么,它都会在代码中反映出来,因为它被用作指针。我不明白,既然你可以更新objB1,为什么不能用同样的方式更新objA。你能写一些代码来展示你写这篇文章的尝试、它的行为、你期望它的行为等等吗?编写一个更新的代码部分。我只能在第一层找到节点时进行更新。如果它在下一个级别,它不更新。你能显示你用C++来做这项工作吗?在C++中,它有一些类似向量剩余值的东西;因此,无论它在classA中的remainingValues中做了什么,它都会在代码中反映出来,因为它被用作指针。我不明白,既然可以更新objB1,为什么不能以同样的方式更新objA。
<5, classA>
     |
     -> <4, classA>
             |
             -> <2, classA>
                      |
                      -> <3, null>
public void updateRemainNodes(classA node) {
    if (!obj1A.remainingValues.isEmpty()) {
        for (int i=0; i<obj1A.remainingValues.size(); i++ ) {
            if (node.getName() == obj1A.remainingValues.get(i).getLeft()) {
                obj1A.remainingValues.get(i).setPair(node.getName(), node);
            }
        }
    }
}