从数据库查询出一些数值.
14,21,42,58,34,25
意思是在页面上霸占多少行.
页面是从第7行开始的.也就是在7的基础上加上14等于21.
然后在21的基础上在加21行等于42.然后在42的基础上加42等于84.依次类推...
List list = new ArrayList();
list.add("14");
list.add("21");
list.add("42");
list.add("34");
list.add("25");
String row = "7";
for(int i=0;i<list.size()-1;i++){
String num = (String) list.get(i);
String num1 = (String) list.get(i+1);
int r = Integer.parseInt(row);
int n = Integer.parseInt(num);
if(i == 0){
//从第row行开始,也就是7
System.out.println(row+"----"+(r+n));
}else{
//从上一行开始,这里不知道该怎么写了...
System.out.println();
}
}

解决方案 »

  1.   

    不必要判断 i 是否是 0
    只要把 row 更新了就够了撒
      

  2.   

    List list = new ArrayList();
        list.add("14");
        list.add("21");
        list.add("42");
        list.add("34");
        list.add("25");
        String row = "7";
        int r = Integer.parseInt(row);
        for(int i=0;i<list.size()-1;i++){
            String num = (String) list.get(i);
            int n = Integer.parseInt(num);
            System.out.println(row+"----"+(r+n));
            r += n;
        }
      

  3.   


    你说的对.我在试试.
    我表达的不够清楚...sorry!
      

  4.   


    List list = new ArrayList();
        list.add("14");
        list.add("21");
        list.add("42");
        list.add("34");
        list.add("25");
        String row = "7";
        int r = Integer.parseInt(row);
        int n;
        for(int i=0;i<list.size();i++){ // list.size()-1 就少遍历了一个
            String num = (String) list.get(i);
            n = Integer.parseInt(num); // n 放外边声明,不必要每次都重新分配一个
            System.out.println(row+"----"+(r+n));
            r += n;
        }
      

  5.   

    List list = new ArrayList();
            list.add("14");
            list.add("21");
            list.add("42");
            list.add("34");
            list.add("25");
            String row = "7";
            int sum = 0;
            for(int i=0;i<list.size();i++){
                String num = (String) list.get(i);
                int r = Integer.parseInt(row);
                int n = Integer.parseInt(num);
                sum+=n;
                System.out.println("从第"+(sum+r)+"行开始");
                for(int j = 0;j < sum+r; j++){
                  System.out.println("霸占"+(sum+r)+"行");
                }
            }
      

  6.   


    import java.util.*;
    public class Test
    {
    public static void main(String[] args) 
    {
    List<String> list = new ArrayList<String>();
            list.add("14");
            list.add("21");
            list.add("42");
            list.add("34");
            list.add("25");
            String row = "7";
    int start = Integer.parseInt(row);
    //System.out.println(start);
            Iterator<String> iterator = list.iterator();
    while(iterator.hasNext()){
    int addjoin = Integer.parseInt(iterator.next());
    System.out.print(start);
    start += addjoin;
    System.out.println(" to " + start); }
    }
    }