gpt4 book ai didi

java - java ArrayList中的元素占用两个位置

转载 作者:行者123 更新时间:2023-12-02 08:10:22 25 4
gpt4 key购买 nike

我创建了一个 LinkedList 来存储 State 对象,这是我创建的一个类。我可以按预期将状态添加到列表中,但每当我在列表上尝试 size() 方法时,它总是返回我添加的元素数量的两倍。为什么要这样做?如果每个元素有 2 个 n 值,我该如何使用 get(n) 方法?

以下是用于创建和添加到列表的代码:

static ArrayList<State> stateTable = new ArrayList<State>();
stateTable.add(new State(new Item(0,0)));

我将添加到列表的添加是在 State 对象的构造函数内完成的,以便所有创建的 State 都放入 stateTable 中。谢谢

最佳答案

I will add that the adding to the list is done inside the constructor for State objects so that all created States get put in the stateTable.

如果您已经将状态添加到构造函数内的列表中,并且另外还有该行

stateTable.add(
new State(new Item(0,0)) // <= first time inside new State(...)
); // <= second time explicitely in this line

那么你确实添加了两次。

关于java - java ArrayList中的元素占用两个位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7540454/

25 4 0