Lucas Noetzold:
Je l' ai constaté lors des tests que la nouvelle Set.of
méthode de Java 9 ne renvoie pas une mise en œuvre ordonnée d'un ensemble.
Comment puis-je utiliser ces utilitaires et toujours obtenir une collection ordonnée? Ou il n'y a aucun moyen, seuls les traditionnels?
Ex.:
Set mySet = Set.of(new Integer[]{1, 2, 3, 4});
//mySet can come in any order when I iterate over it
EDIT
oublié de mentionner, je dois garder l'ordre qui vient dans le tableau.
D'après les réponses , il semble que l' utilisation du bon vieux et new LinkedHashSet(Arrays.asList(myArr))
est encore le chemin.
Mureinik:
Les immuables Set
de créées par ne Set.of
font aucune garantie quant à l'ordre d'itération de leurs éléments. Vous pouvez utiliser une implémentation spécifique qui fait, comme un LinkedHashSet
:
Set<Integer> mySet = new LinkedHashSet<>(List.of(new Integer[]{1, 2, 3, 4}));