我有2个arraylist,第一个包含300个区域人口,另一个包含300个区域的采用率。 我想计算每个地区的新人口。但是,在进行嵌套for循环计算之后。 arraylist的大小已经改为90000.为什么会发生?我做错了什么?
private void calArray(){
int k;
double n,v;
int result;
int popSize = populArrayList.size();
int adoptSize = adoptArrayList.size();
for (int i = 0; i < popSize; i++){
k = populArrayList.get(i);
for(int j = 0; j < adoptSize; j++){
n = adoptArrayList.get(j);
v = k + (k * n);
pv1.add(Math.floor(v));
System.out.println(pv1.size());
}
}
}
答案 0 :(得分:2)
由于两个列表的大小相同。您可以使用单个for循环替换for循环,如下所示。
for (int i = 0; i < populArrayList.size(); i++) {
k = populArrayList.get(i);
n = adoptArrayList.get(i);
v = k + (k * n);
pv1.add(Math.floor(v));
}