Вот мой код. В моем случае список переезжает. вывод должен быть [[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]]. который является последним значением в цикле. в чем может быть проблемаArrayList внутри ArrayList становится переопределенным
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' внутри цикла. – user7
Спасибо, сработало. list1.clear(); должен делать то же самое право на работу? –
См. Мой ответ для деталей. – user7