Menu
CoddyTech

Math - Différence d'ensembles

Fait partie de la section Logique & Flux du Journey Java de Coddy. Leçon 31 sur 59.

La différence entre deux ensembles produit un nouvel ensemble contenant les éléments qui se trouvent dans le premier ensemble, mais pas dans le second. En Java, vous pouvez y parvenir à l’aide de la méthode removeAll().

First, create two HashSets.
HashSet<Integer> set1 = new HashSet<>();
set1.add(1);
set1.add(2);
set1.add(3);
HashSet<Integer> set2 = new HashSet<>();
set2.add(2);
set2.add(3);
set2.add(4);

Ensuite, crée un nouveau HashSet pour la différence — commence par tous les éléments de set1 :

HashSet<Integer> differenceSet = new HashSet<>(set1);

Ensuite, supprimez tous les éléments qui apparaissent dans set2 :

differenceSet.removeAll(set2); // [1]
challenge icon

Défi

Facile

Créez une méthode nommée setDifference qui prend en entrée deux HashSets d’entiers. La méthode doit calculer la différence (les éléments du premier ensemble qui ne se trouvent pas dans le second) et afficher le résultat au format suivant :

Difference: [elements]

Essayez vous-même

import java.util.HashSet;
import java.util.Scanner;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;

public class Main {
    public static void setDifference(HashSet<Integer> set1, HashSet<Integer> set2) {
        // Écrivez votre code ici
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        // Lire la chaîne JSON représentant le premier ensemble (p. ex., [1,2,3])
        String set1String = scanner.nextLine();
        // Lire la chaîne JSON représentant le second ensemble (p. ex., [2,3,4])
        String set2String = scanner.nextLine();

        Type setType = new TypeToken<HashSet<Integer>>(){}.getType();
        HashSet<Integer> set1 = new Gson().fromJson(set1String, setType);
        HashSet<Integer> set2 = new Gson().fromJson(set2String, setType);

        setDifference(set1, set2);
    }
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Logique & Flux

Entraînez-vous par vous-même : Compilateur Java en ligne