English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java Basic Tutorial

Contrôle de flux Java

Java tableau

Java orienté objet (I)

Java orienté objet (II)

Java orienté objet (III)

Java Exception Handling

Java List

Java Queue (file d'attente)

Java Map ensemble

Java Set ensemble

Java entrée/sortie (I/O)

Java Reader/Writer

Autres sujets Java

Java Set interface

Nous allons apprendre dans ce tutoriel l'interface Set et ses méthodes en Java.

L'interface Set du cadre Java Collections fournit les fonctionnalités de collections mathématiques en Java. Elle hérite de l'interface Collection.

Contrairement à l'interface List, les ensembles Set ne peuvent pas contenir d'éléments répétés.

Classes réalisant Set

Comme Set est une interface, il est impossible de créer des objets à partir de celle-ci.

Pour utiliser les fonctionnalités de l'interface Set, nous pouvons utiliser les classes suivantes :

Ces classes sont définies et réalisées dans le cadre Collections et implémentent l'interface Set.

Interface héritant de Set

L'interface Set également étend ces sous-interfaces :

Comment utiliser Set ?

En Java, il est nécessaire d'importer le paquet java.util.Set pour utiliser Set.

//Réaliser Set avec HashSet
Set<String> animals = new HashSet<>();

Ici, nous avons créé un Set appelé animals. Nous avons utilisé HashSet pour réaliser l'interface Set.

Méthodes de Set

L'interface Set contient toutes les méthodes de l'interface Collection. Cela car Collection est l'interface parent de Set.

L'interface Set fournit également certains méthodes courantes de l'interface Collection :

  • add() - Ajouter l'élément spécifié à l'ensemble

  • addAll() - Ajouter tous les éléments de l'ensemble spécifié à l'ensemble

  • iterator() -Retourner un itérateur, qui peut être utilisé pour accéder en ordre aux éléments de l'ensemble

  • remove() - Supprimer l'élément spécifié de l'ensemble

  • removeAll() - Supprimer tous les éléments présents dans un autre ensemble spécifié

  • keepAll()  -Garder tous les éléments encore présents dans un autre ensemble spécifié

  • clear() - Supprimer tous les éléments de l'ensemble

  • size() - Retourner la longueur de l'ensemble (le nombre d'éléments)

  • toArray() - Retourner un tableau contenant tous les éléments de l'ensemble

  • contains() -  Retourne true si l'ensemble contient l'élément spécifié

  • containsAll() - Retourne true si l'ensemble contient tous les éléments de l'ensemble spécifié

  • hashCode() -Retourner la valeur de hachage (l'adresse des éléments du ensemble)

Opérations sur les ensembles Set

L'interface Set de Java nous permet d'exécuter des opérations mathématiques de base sur les ensembles, telles que l'union, l'intersection et le sous-ensemble.

  • Union - Pour obtenir l'union des ensembles x et y, nous pouvons utiliser x.addAll(y)

  • Intersection - Pour obtenir l'intersection des ensembles x et y, nous pouvons utiliser x.retainAll(y)

  • Sous-ensemble - Pour vérifier si x est un sous-ensemble de y, nous pouvons utiliser y.containsAll(x)

Implémentation de l'interface Set

1.implémenter l'interface Set

import java.util.Set;
import java.util.HashSet;
class Main {
    public static void main(String[] args) {
        //Créer un ensemble en utilisant la classe HashSet
        Set<Integer> set1 = new HashSet<>();
        //Ajouter des éléments à set1
        set1.add(2);
        set1.add(3);
        System.out.println("Set1: " + set1);
        //Créer un autre ensemble en utilisant la classe HashSet
        Set<Integer> set2 = new HashSet<>();
        //Ajouter un élément
        set2.add(1);
        set2.add(2);
        System.out.println("Set2: " + set2);
        //L'union de deux ensembles
        set2.addAll(set1);
        System.out.println("L'union est: " + set2);
    }
}

Output result

Set1: [2, 3]
Set2: [1, 2]
L'union est: [1, 2, 3]

Pour en savoir plus sur HashSet, veuillez visiterJava HashSet.

2.implémenter la classe TreeSet

import java.util.Set;
import java.util.TreeSet;
import java.util.Iterator;
class Main {
    public static void main(String[] args) {
        //Créer un ensemble en utilisant la classe TreeSet
        Set<Integer> numbers = new TreeSet<>();
        // Ajouter des éléments à l'ensemble set
        numbers.add(2);
        numbers.add(3);
        numbers.add(1);
        System.out.println("TreeSet: " + numbers);
        //Accéder aux éléments en utilisant iterator()
        System.out.print("Access elements using iterator(): ");
        Iterator<Integer> iterate = numbers.iterator();
        while(iterate.hasNext()) {
            System.out.print(iterate.next());
            System.out.print(", ");
        }
    }
}

Output result

TreeSet: [1, 2, 3]
Access elements using iterator(): 1, 2, 3,

For more information on TreeSet, please visitJava TreeSet.

Now that we know what a Set is, in the next tutorial, we will see its implementation in classes such as EnumSet, HashSet, LinkedHashSet, and TreeSet.