Ensembles en Java: savoir comment travailler avec Java Set Interface



Set in Java est une collection d'éléments non ordonnés; dans lequel les valeurs en double ne peuvent pas être stockées. Lisez cet article et apprenez tout sur la collection de jeux Java.

Le Java Collection Framework contient de nombreuses interfaces, dont l'une est l'interface Set. Cet article vous donnera une introduction détaillée à Sets In . Voici les conseils à traiter dans cet article:

Ensembles en Java

Set être défini comme une collection d'éléments non ordonnés dans laquelle les valeurs dupliquées ne peuvent pas être stockées. Il étend la collection et donc toutes les méthodes du sont disponibles dans l'interface Set. Il est implémenté par HashSet, LinkedHashSet ou TreeSort.





Ensembles - Collections Java - Edureka

Chacune de ces implémentations agit différemment lors de l'itération de l'ensemble, principalement en ce qui concerne l'ordre des éléments, et le temps pris pour l'insertion et pour accéder aux éléments.



    • Hash Set fait ne fournit aucune garantie sur l'ordre des éléments lors de l'itération de l'ensemble.
    • LinkedHashSet d'autre part, fournit une garantie sur l'ordre des éléments lors de leur itération.
    • TreeSet fournit une garantie, mais l'ensemble est trié selon l'ordre naturel, ou par une implémentation de comparateur spécifique.

Comment créer un ensemble?

Le code suivant définit la méthode de création d'un nouvel ensemble:

Set num = new HashSet ()



Nous avons utilisé génériques pour déclarer l'ensemble d'un type entier.

Définir des méthodes en Java:

Nous pouvons effectuer plusieurs opérations sur un ensemble comme suit:

Ajouter une méthode

La méthode add insère un élément dans le . Dans le code ci-dessous, nous insérons un ensemble de noms.

Définir strName = new HashSet () strName.add ('John') strName.add ('Doe') System.out.println (strName)

Production:

[John, Doe]

Remove, méthode

Cette méthode supprime l'élément spécifié de l'ensemble.

import java.util. * public class Main {public static void main (String args []) {// Création d'un ensemble vide Set = new HashSet () // Ajout d'éléments à l'ensemble set.add ('John') set .add ('Doe') // Afficher l'ensemble System.out.println ('Set:' + set) // Suppression de l'élément «Doe» à l'aide de la méthode remove () set.remove ('Doe') // Affichage du ensemble modifié System.out.println ('Set:' + set)}}

Production:

Ensemble: [John, Doe]

Définir: [John]

Est la méthode vide

Cette méthode vérifie si le est vide ne l'est pas. Il renvoie true si l'ensemble est vide et false dans le cas contraire.

import java.io. * import java.util. * public class Main {public static void main (String args []) {Set javaSet = new HashSet () // Ajout d'éléments à l'ensemble javaSet.add ('John') javaSet .add ('Doe') // Afficher l'ensemble System.out.println ('Set:' + javaSet) // Vérifier si l'ensemble est vide System.out.println ('Empty Set:' + javaSet.isEmpty () ) // Effacement de l'ensemble à l'aide de la méthode clear () javaSet.clear () // Vérification si l'ensemble est vide System.out.println ('Empty Set:' + javaSet.isEmpty ())}}

Production:

Ensemble: [John, Doe]

Ensemble vide: faux

Ensemble vide: vrai

Méthode de taille

La méthode size () renvoie la taille de l'ensemble, c'est-à-dire le nombre d'éléments présents dans l'ensemble.

import java.util. * public class Main {public static void main (String args []) {// Création d'un ensemble Set set = new HashSet () set.add ('John') set.add ('Doe') System .out.println ('Set:' + set) // Affichage de la taille du System.out.println envoyé ('Size of the set:' + set.size ())}}

Production:


Ensemble: [John, Doe]

Taille de l'ensemble: 2

Itérer sur un ensemble

On peut itérer sur tous les éléments présents dans l'ensemble par la méthode suivante:

import java.util. * import java.util.HashSet public class Main {public static void main (String args []) {// Création d'un HashSet HashSet javaSet = new HashSet () javaSet.add ('John') javaSet.add ('Doe') // Affichage de l'ensemble System.out.println ('HashSet:' + javaSet) // Création d'un itérateur Iterator itr = javaSet.iterator () // Affichage des valeurs après itération System.out.println (' Valeurs de l'itérateur: ') while (itr.hasNext ()) {System.out.println (itr.next ())}}}

Production:

HashSet: [John, Doe]

Valeurs de l'itérateur:

John

Faire

Recherche dans un ensemble

Nous utilisons la méthode contains () pour déterminer si l'ensemble contient un élément spécifié. Renvoie true si l'élément est trouvé et false dans le cas contraire.

import java.io. * import java.util.HashSet public class Main {public static void main (String args []) {// Création d'un HashSet HashSet javaSet = new HashSet () javaSet.add ('John') javaSet.add ('Doe') // Affichage du HashSet System.out.println ('HashSet:' + javaSet) // Recherche de «John» dans l'ensemble System.out.println ('John in set:' + javaSet.contains ( 'John')) // Recherche de 'Hazel' dans l'ensemble System.out.println ('Hazel dans l'ensemble:' + javaSet.contains ('Hazel'))}}

Production:

HashSet: [John, Doe]

qu'est-ce qu'une classe anonyme en java

John dans l'ensemble: vrai

Hazel dans l'ensemble: faux

Opérations de base sur les ensembles en Java

  • Syndicat: Pour ajouter un ensemble à un autre, nous utilisons l'opération Union
  • Intersection: Pour conserver les valeurs communes des deux ensembles, nous utilisons l'opération d'intersection.
  • Différence: Pour supprimer les valeurs d'un ensemble de l'autre ensemble, l'opération de différence est utilisée.

Exemple

import java.util. * public class Main {public static void main (String args []) {Set d = new HashSet () d.addAll (Arrays.asList (new Integer [] {3, 2, 1, 9, 6 , 4, 0})) Set e = new HashSet () e.addAll (Arrays.asList (new Integer [] {3, 1, 9, 5, 2, 0, 7,})) // Union Operation Set union = new HashSet (d) union.addAll (e) System.out.println ('Union:' + union) // Ensemble d'opérations d'intersection intersection = new HashSet (d) intersection.retainAll (e) System.out.println (' Intersection: '+ intersection) // Différence Operation Set difference = new HashSet (d) difference.removeAll (e) System.out.println (' Difference: '+ difference)}}

Production:

Union: [0, 1, 2, 3, 4, 5, 6, 7, 9]

Intersection: [0, 1, 2, 3, 9]

Différence: [4, 6]

Les méthodes et les opérations mentionnées dans la méthode rendent l'interface d'ensemble élémentaire et efficace par nature.

Ainsi, nous sommes arrivés à la fin de cet article sur «Ensembles en Java». Si vous souhaitez en savoir plus, consultez le par Edureka, une entreprise d'apprentissage en ligne de confiance. Le cours de formation et de certification Java J2EE et SOA d'Edureka est conçu pour vous former aux concepts Java de base et avancés ainsi qu'à divers frameworks Java tels que Hibernate et Spring.

Vous avez une question pour nous? Veuillez le mentionner dans la section commentaires de l'article «sets in java» et nous vous répondrons dans les plus brefs délais.