[JAVA] Divisez la liste en nombres arbitraires

Conclusion

Utilisez org.apache.commons.collections4.ListUtils # partition ().

Javadoc https://commons.apache.org/proper/commons-collections/apidocs/org/apache/commons/collections4/ListUtils.html#partition-java.util.List-int-

Maven https://mvnrepository.com/artifact/org.apache.commons/commons-collections4/4.4

<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-collections4 -->
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-collections4</artifactId>
    <version>4.4</version>
</dependency>

Exemple d'utilisation (1)

Spécifiez le nombre maximum d'éléments par un

List<String> list0 = Arrays.asList("aaa", "bbb", "ccc", "ddd", "eee", "fff", "ggg");
List<List<String>> lists = ListUtils.partition(list0, 3);
for (List<String> list : lists) {
	System.err.println(list);
}
[aaa, bbb, ccc]
[ddd, eee, fff]
[ggg]

Exemple d'utilisation (2)

Spécifiez le nombre que vous souhaitez diviser


List<String> list0 = Arrays.asList("aaa", "bbb", "ccc", "ddd", "eee", "fff", "ggg");
List<List<String>> lists = ListUtils.partition(list0, list0.size() / 2 + 1);
for (List<String> ll : lists) {
	System.err.println(ll);
}
[aaa, bbb, ccc, ddd]
[eee, fff, ggg]

Contexte

J'ai fait une méthode similaire par moi-même et l'ai complétée, mais j'ai réalisé que "This is in Commons!?" Et suis venu à la découverte orz.

c'est tout.

Recommended Posts

Divisez la liste en nombres arbitraires
Diviser en nombres arbitraires à partir de la latitude et de la longitude du nord, du sud, de l'est et de l'ouest
Transformez les nombres rationnels en fractions, transformez les fractions en nombres rationnels