【发布时间】:2015-11-11 08:12:30
【问题描述】:
请帮助我在 ArrayList 内的 ArrayList 中添加整数.. 这是代码..
ArrayList<ArrayList<Integer>> player = new ArrayList<ArrayList<Integer>>(10);
ArrayList<Integer> array = new ArrayList<Integer>(10);
array.add(1);
array.add(2);
array.add(3);
array.add(4);
array.add(5);
player.add(array);
player.add(array);
如果我使用调试检查数组和播放器内部的内容..
array[1,2,3,4,5]
player[[1,2,3,4,5],[1,2,3,4,5]]
现在,我想在播放器的 ArrayList 插槽 0 上添加整数:
player.get(0).add(6);
但不是得到这个:
player[[1,2,3,4,5,6],[1,2,3,4,5]]
我明白了:
player[[1,2,3,4,5,6],[1,2,3,4,5,6]]
简而言之,玩家的 ArrayLost 插槽 0 和插槽 1 收到了我添加的整数..
请帮忙..提前谢谢..:)
【问题讨论】:
-
您添加了相同的
List和String两次。由于List数据类型是通过引用对array所做的所有更改都会影响player.get(0)和player.get(1)。要解决这个问题,您需要为player创建两个不同的Lists。