因此,我试图在一个for循环中将相同的ArrayList(结)洗牌50次,并将洗过的列表添加到另一个ArrayList(gen0)。但是每次我添加一个新的ArrayList时,它都会将所有现有ArrayList元素覆盖到我刚刚添加的同一ArrayList中,有人可以告诉我为什么吗?
ArrayList<ArrayList> seed(ArrayList<PVector> knots) {
ArrayList<ArrayList> gen0 = new ArrayList<ArrayList>();
for(int i=1; i<=50; i++) {
Collections.shuffle(knots);
gen0.add(knots);
}
return gen0;
}```
答案 0 :(得分:0)
您每次都将对同一chol2inv(chol(X))
的引用改组。相反,请考虑在每次迭代时复制ArrayList
ArrayList