日期:2014-05-20  浏览次数:20654 次

求算法
我有一个list集合,里面有100条数据
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
.....
list.add(100);

我要循环求值:
要求每20条相加得出一个值,并加入到新的List<Integer>集合中,即
0-19条数据相加得出的值,加入到List<Integer>中,
20-39条数据相加得出的值,加入到List<Integer>中
以此类推
最后新的List<Integer>集合中有5条数据。求解!

------解决方案--------------------
Java code

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class Test06 {
    public static void main(String[] args){
        List<Integer> list = new ArrayList<Integer>();
        List<Integer> sumlist = new ArrayList<Integer>();
        for(int i=1;i<=100;i++){
            list.add(i);
        }
        int sum = 0;
        for(int i=0;i<5;i++){
            for(int j=0;j<20;j++){
                sum += list.get(20*i+j);
            }
            sumlist.add(sum);
            sum = 0;
        }
        for(Iterator itr = sumlist.iterator();itr.hasNext();){
            System.out.println(itr.next());
        }
    }

}