88 votes

Jeux de copie Java

Existe-t-il un moyen de copier un TreeSet ? C'est-à-dire, est-il possible d'aller

 Set <Item> itemList;
Set <Item> tempList;

tempList = itemList;

ou devez-vous parcourir physiquement les ensembles et les copier un par un ?

7voto

Yosi Dahari Points 4476

Avec Java 8, vous pouvez utiliser stream et collect pour copier les éléments :

 Set<Item> newSet = oldSet.stream().collect(Collectors.toSet());

Ou vous pouvez collecter à un ImmutableSet (si vous savez que l'ensemble ne devrait pas changer) :

 Set<Item> newSet = oldSet.stream().collect(ImmutableSet.toImmutableSet());

7voto

Oleksandr Points 7545

A partir de Java 10 :

 Set<E> oldSet = Set.of();
Set<E> newSet = Set.copyOf(oldSet);

Set.copyOf() renvoie un Set non modifiable contenant les éléments du Collection .

Le Collection ne doit pas être null , et il ne doit contenir aucun élément null .

3voto

J. Doe Points 2857

Java 8+ :

 Set<String> copy = new HashSet<>(mySet); 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X