Java中將List拆分為多個小list集合的實現代碼

前言:在平常寫代碼時候可能會遇到需要將一個大list拆分多個小list,進行一些業務處理。

一、如何將List拆分為多個小list

如何將List拆分多個小list,首先我們需要list.sublist這個方法如何使用。
list.sublist(int fromIndex, int toIndex)方法有兩個參數。
fromIndex:為起始索引(包含)
toIndex:為終止索引(不包含)的子列表(List)

但值得註意的是,返回的這個子列表的幕後其實還是原列表;也就是說,修改這個子列表,將導致原列表也發生改變;反之亦然。

具體實現試下:

public static <T> List<List<T>> splistList(List<T> list,int subNum) {
    List<List<T>> tNewList = new ArrayList<List<T>>();
    int priIndex = 0;
    int lastPriIndex = 0;
    int insertTimes = list.size()/subNum;
    List<T> subList = new ArrayList<>();
    for (int i = 0;i <= insertTimes;i++) {
      priIndex = subNum*i;
      lastPriIndex = priIndex + subNum;
      if (i == insertTimes) {
        subList = list.subList(priIndex,list.size());
      } else {
        subList = list.subList(priIndex,lastPriIndex);
      }
      if (subList.size() > 0) {
        tNewList.add(subList);
      }
    }
    return tNewList;
  }

測試代碼如下:

public static void main(String[] args) {
    List<String> list = Arrays.asList("1","2","3","4","5","6","7","8","9");
    List<List<String>> lists = splistList(list, 4);
    System.out.println(lists.size());
  }

輸出結果:

lists size is:3

到此這篇關於Java中將List拆分為多個小list集合的實現代碼的文章就介紹到這瞭,更多相關java list拆分內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: