Fácil de usar colección de herramientas CollectionUtils

Reproducido del artículo: https://www.cnblogs.com/fengli9998/p/7868299.html , si la infracción, por favor, póngase en contacto conmigo para eliminar, gracias!

Antes de que un conjunto de contacto con CollectionUtils.

Hoy en día para resumir estas herramientas.

Se utiliza principalmente estaVacia método estático (Final Collection <?> Coll) para determinar si un conjunto dado es nulo o si la longitud es cero. clase Sólo recientemente descubierto de esta herramienta también puede tener la intersección de los conjuntos, y conjunto, incluso un conjunto diferencia, ajuste 1: [1,2,3,4], el conjunto 2: [3,4,5,6]

      Lo anterior teniendo una intersección de dos conjuntos es el resultado de [3,4], herramientas CollectionUtils proporcionado Collection <O> intersección (Final Iterable <? Extiende O> a, Final Iterable <? Extiende O> b) método estático intersectó, Los parámetros pasados ​​dos colecciones, puede ser una lista, que se puede fijar, o incluso una lista, un conjunto;

      El conjunto por encima de dos resultados se toma y conjunto [1,2,3,4,5,6], herramientas CollectionUtils proporciona Colección <O> unión (última Iterable <? Extiende O> a, última Iterable <? Extiende O > b), entrecruzado con parámetros similares;

      herramientas CollectionUtils también proporciona un método de recolección de estática establece tomando la diferencia <O> disyunción (Final Iterable <? Extiende O> a, Final Iterable <? Extiende O> b), si la operación anterior, a continuación, los dos conjuntos (primera conjunto protegido a la segunda serie), el resultado es [1,2,5,6], este efecto es en realidad dos conjuntos de unión menos la intersección de estos dos conjuntos. Pero el desarrollo real, lo que se quiere conseguir más [1,2], herramientas CollectionUtils no proporcionan un método directo puede lograr este efecto, pero podemos conseguir este efecto mediante la cooperación entre los dos métodos, a saber, por la primera una intersección colección de resta de dos conjuntos:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

dieciséis

17

18

19

20

21

22

23

24

25

public static void main(String[] args) { 

    List<Integer> list1 = new ArrayList<Integer>(); 

    list1.add(1); 

    list1.add(2); 

    list1.add(3); 

    list1.add(4); 

   

    List<Integer> list2 = new ArrayList<Integer>(); 

    list2.add(3); 

    list2.add(4); 

    list2.add(5); 

    list2.add(6); 

   

    // 取交集[3, 4] 

    Collection<Integer> interColl = CollectionUtils.intersection(list1, list2); 

    System.out.println(interColl);// 打印出[3, 4] 

   

    // 取并集[1, 2, 3, 4, 5, 6] 

    Collection<Integer> unionColl = CollectionUtils.union(list1, list2); 

    System.out.println(unionColl);// 打印出[1, 2, 3, 4, 5, 6] 

   

    // 取差集[1,2] 

    Collection<Integer> disColl = CollectionUtils.disjunction(list1, interColl); 

    System.out.println(disColl);// 打印出[1, 2] 

    

   Además de los métodos descritos anteriormente, las herramientas CollectionUtils hay muchos otros métodos estáticos usados ​​comúnmente. En CollectionUtils herramientas Además, hay ListUtils, herramientas SetUtils, también hay un método de uso de una gran cantidad de estática. Sin embargo CollectionUtils único conjunto de operaciones, los parámetros se pasan de objetos Iterable se puede ver, pero no heredan el mapa de interfaz interfaz Iterable, la forma de operar el objeto de mapa? Sin embargo, todavía se sorprenden por la MapUtils, muy grande hi pobre Ben. En resumen, después de procesar List, Set cuando el mapa, si se utiliza un método común, verificación de prioridad de estas herramientas ir, no lo es, a escribir su propio método de herramientas.

Publicado 23 artículos originales · ganado elogios 7 · Vistas a 20000 +

Supongo que te gusta

Origin blog.csdn.net/ghd602338792/article/details/93591692
Recomendado
Clasificación