gpt4 book ai didi

java - ArrayList 内的 ArrayList 被覆盖

转载 作者:太空宇宙 更新时间:2023-11-04 13:00:35 25 4
gpt4 key购买 nike

这是我的代码。就我而言, list 已经被过度利用。输出应为 [[1][1,1][1,2,1][1,3,3,1][1,4,6,4,1]我变得像 - [[1, 4, 6, 4, 1], [1, 4, 6, 4, 1], [1, 4, 6, 4, 1], [1, 4, 6, 4, 1], [1, 4, 6, 4, 1]]。这是循环中重复的最新值。可能是什么问题

int i,j;
i=0;
j=0;
int a;
Integer temp;
a = 5;
ArrayList<ArrayList<Integer>> list = new ArrayList<ArrayList<Integer>>();
ArrayList<Integer> list1 = new ArrayList<Integer>();

for ( i =0 ;i<a ;i++)
{
list1.clear();

Integer number;
number = (int) Math.pow(11, i);
LinkedList<Integer> stack = new LinkedList<Integer>();
while (number > 0) {
stack.push( number % 10 );
number = number / 10;
}

while (!stack.isEmpty()) {
temp = (stack.pop());
list1.add(temp);
}
list.add(list1);
}
System.out.println("The arraylist contains the following elements: "+ list);

最佳答案

看起来您每次都在清理 List1 数组。并且大数组列表中只有一个数组列表。所以你最终得到了放在内部数组列表中的最后结果。为了获得预期的结果,您应该在 for 循环内创建多个数组列表。

关于java - ArrayList 内的 ArrayList 被覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34985005/

25 4 0