有个 List <Data> 有100件数据
现在要按n顺序取出15件数据生成一个List <Data>
比如n=1 就取出第1-15件,生成一个List <Data>
比如n=3 就取出第30-45件,生成一个List <Data>
比如n=7 就取出第90-100件,生成一个List <Data>求实现方法,谢谢! Data的构造是 
public class Data 

private string name; 姓名 
private int no;      番号 public void setName(string n) { this.name = n; } 
public void setNo(int a) { this.No= a; } 
public string getName() { return name; } 
public int getNo() { return No;} 

解决方案 »

  1.   

    10分挣的不容易啊    public List<Data> getSubList(int num)
        {
            List<Data> data = new ArrayList<Data>();
            if(data.size() < num * 15)
            {
                return null;
            }
            
            return data.subList((num - 1) * 15, num * 15 - 1);
        }
      

  2.   


    public List<Data> getSubList(int num) {
         List<Data> data = new ArrayList<Data>();
         if(data.size() < num * 15) {
                return null;
         }
         return data.subList((num - 1) * 15, num * 15 - 1);
    }
      

  3.   

    public List<Data> getSubList(int num) {
         List<Data> data = new ArrayList<Data>();
         int len = data.size();
         if(len < (num-1) * 15) {
           return null;
         } else if(len < num* 15-1)){
           return data.subList((num - 1) * 15,len);
         }
         return data.subList((num - 1) * 15, num * 15 - 1);
    }
      

  4.   

    List 中有个 subList(int i,int j)方法,可以取出LIST中下标由i到j的数据组成一个新的list.
      

  5.   

    顶 同上上上楼 哈哈
    public List<Data> getSubList(int num)
        {
            List<Data> data = new ArrayList<Data>();
            if(data.size() < num * 15)
            {
                return null;
            }
            
            return data.subList((num - 1) * 15, num * 15 - 1);
        }