En

Ensembles en Java

2 exercices

À propos de Ensembles

Un Set est une collection non ordonnée qui, contrairement à List, garantit l'absence de valeurs en double.

Le paramètre de type générique de l'interface Set désigne le type des éléments contenus dans le Set :

Set<Integer> ints = Set.of(1, 2, 3);
Set<String> strings = Set.of("alpha", "beta", "gamma");
Set<Object> mixed = Set.of(1, false, "foo");

Note que la méthode Set.of() crée une instance de Set non modifiable. Si on essaie d'appeler des méthodes comme add et remove sur cette instance, une exception est levée à l'exécution.

Pour créer un Set modifiable, il faut instancier une classe qui implémente l'interface Set. La classe intégrée la plus utilisée qui implémente cette interface est la classe HashSet.

Set<Integer> ints = new HashSet<>();

L'interface Set hérite des interfaces Collection et Iterable, et partage donc de nombreuses méthodes avec d'autres types de collections. Une différence notable avec l'interface Collection, cependant, est que des méthodes comme add et remove renvoient un boolean (au lieu de void) qui indique si l'élément était contenu dans l'ensemble au moment de l'appel de cette méthode :

Set<Integer> set = new HashSet<>();
set.add(1);
// => true
set.add(2);
// => true
set.add(1);
// => false
set.size();
// => 2
set.contains(1);
// => true
set.contains(3);
// => false
set.remove(3);
// => false
set.remove(2);
// => true
set.size();
// => 1
Modifie via GitHub Le lien s'ouvre dans une nouvelle fenêtre ou un nouvel onglet

Apprends Ensembles