你的位置:首页 > Java教程

[Java教程]使用泛型为不同类型的列表分页


要求根据客户端提交的参数,对返回的结果列表进行分页,只返回客户指定的那一页。写一个公用函数来实现这个功能就存在一个问题,有多种类型的列表,怎样定义传递给分页函数的列表变量?就只能使用泛型了。

  public static<T> List<T> getPage(List<T> l, int count, int page){    int i, min, max;    List<T> r = new ArrayList<T>();    T t;        if ((count == 0) || (page == 0))      return l;        min = (page-1)*count;    if (page*count<l.size()){      max = page*count;    }    else{      max = l.size();    }    for (i = min; i<max; i++){      t = l.get(i);      r.add(t);    }        return r;  }

使用这个函数,对列表l进行分页,每页有count条数据,只返回第page页的数据。