考虑以下方法:
public static void mystery2(ArrayList<Integer> list) {
for (int i = list.size() - 1; i >= 0; i--) {
if (i % 2 == 0) {
list.add(list.get(i));
} else {
list.add(0, list.get(i));
}
}
System.out.println(list);
}
列表是
[10,20,30]
[8,2,9,7,4]
[ - 1,3,28,17,9,33]
并且回答是
[20,10,20,30,30,20]
[8,7,8,2,9,7,4,4,2,8]
[33,28,33,-1,3,28,17,9,33,17,-1,33]
任何人都可以一步一步解释吗?
答案 0 :(得分:0)
list.add(someNumber)
将在列表末尾插入数字,而`list.add(0,someNumber)'将在列表的开头插入数字。请注意,循环不会迭代初始列表的所有元素。