Maison  >  Article  >  Java  >  Introduction aux méthodes d'opération de segmentation de liste en Java

Introduction aux méthodes d'opération de segmentation de liste en Java

黄舟
黄舟original
2017-09-26 10:00:041999parcourir

Cet article présente principalement des informations pertinentes sur des exemples d'opérations de segmentation de liste en Java. J'espère que grâce à cet article, vous pourrez maîtriser la méthode de mise en œuvre de la segmentation de liste. Les amis dans le besoin pourront se référer à

Exemples. des opérations de segmentation de liste en Java

Problème : Supposons que le système A interroge une très grande liste et que maintenant le système B souhaite obtenir cette liste pour exporter des rapports, mais l'environnement de déploiement du système B. Les conditions sont limitées et la mémoire ne peut pas accueillir une liste aussi grande. Pour le moment, nous devons diviser la liste et l'exporter une par une.

Si nous suivons la méthode traditionnelle, cela peut être plus lourd. Nous pouvons utiliser la méthode subList dans List pour y parvenir. Le code est le suivant :


<.>
import java.util.ArrayList;
import java.util.List;

public class listTest {

  public static void main(String[] args) {
    List<String> list = new ArrayList<String>();
    list.add("aaa");//index_0
    list.add("bbb");//index_1
    list.add("ccc");//index_2
    list.add("ddd");//index_3
    list.add("eee");//index_4
    list.add("fff");//index_5
    list.add("ggg");//index_6

    int flag = 3;//每次取的数据

    int size = list.size();
    int temp = size / flag + 1;
    boolean special = size % flag == 0;
    List<String> cutList = null;
    for (int i = 0; i < temp; i++) {
      if (i == temp - 1) {
        if (special) {
          break;
        }
        cutList = list.subList(flag * i, size);
      } else {
        cutList = list.subList(flag * i, flag * (i + 1));
      }
      System.out.println("第" + (i + 1) + "组:" + cutList.toString());
    }
  }
}
Test :

1. drapeau = 1


第1组:[aaa]
第2组:[bbb]
第3组:[ccc]
第4组:[ddd]
第5组:[eee]
第6组:[fff]
第7组:[ggg]
2.

3, drapeau = 10

第1组:[aaa, bbb]
第2组:[ccc, ddd]
第3组:[eee, fff]
第4组:[ggg]

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn