Qu'est-ce que LinkedHashSet en Java? Comprendre avec des exemples



Cet article sur LinkedHashSet en Java, vous aidera à comprendre ce qu'est LinkedHashListi et en quoi il est différent de HashSet à l'aide d'exemples de programmes.

À est une collection qui n'autorise aucun élément en double. Les implémentations les plus couramment utilisées de l'interface d'ensemble sont HashSet, TreeSet et LinkedHashSet. Dans cet article, nous allons explorer l'une de ces implémentations: LinkedHashSet dans

Vous trouverez ci-dessous les sujets abordés dans cet article:





Qu'est-ce que LinkedHashSet?

LinkedHashSet est un framework en Java. Fondamentalement, c'est la classe enfant ou la classe dérivée de la superclasse HashSet . Il diffère de HashSet des manières suivantes:

  1. La ordre d'insertion des éléments est conservé lors de la création d'un LinkedHashSet.
  2. Une structure de données sous-jacente est l'hybride de Hash Table (dans HashSet) et Linked List.
  3. Doublons ne sont pas autorisés dans LinkedHashSet.

Lorsque nous traversons un LinkedHashSet via un agent itératif, les éléments seront renvoyés dans le même ordre qu'ils ont été insérés.L'organigramme ci-dessous explique que l'interface Ensemble met en œuvre la classe LinkedHashSet dans



Hiérarchie - LinkedHashSet en Java - Edureka

Au début de cet article, nous avons expliqué en quoi LinkedHashSet diffère de HashSet. Jetons un coup d'œil à certains pour comprendre en quoi LinkedHashSet est différent.

code de liste liée en c

Ordre d'insertion

Voici un exemple de programme de LinkedHashSet démontrant si l'ordre d'insertion est conservé ou non.



import java.util. * public class Method1 {public static void main (String args []) {LinkedHashSet hs = new LinkedHashSet () // Ajout d'éléments au LinkedHashSet hs.add ('E') hs.add ('d' ) hs.add ('u') hs.add ('r') hs.add ('e') hs.add ('k') hs.add ('a') // Affichage du LinkedHashSet System.out mis à jour .println ('Mis à jour LinkedHashSet:' + hs)}}

Production

LinkedHashSet mis à jour: [E, d, u, r, e, k, a]

La sortie montre clairement que l'ordre d'insertion est conservé dans LinkedHashSet contrairement à la classe HashSet.

Redondance

Dans LinkedHashSet, les éléments en double ne sont pas autorisés. Regardons une illustration pour vérifier si cela est vrai ou non.

import java.util. * public class Method1 {public static void main (String args []) {LinkedHashSet hs = new LinkedHashSet () // Ajout d'éléments au LinkedHashSet hs.add ('E') hs.add ('E' ) // ajout d'éléments dupliqués hs.add ('d') hs.add ('u') hs.add ('r') hs.add ('e') hs.add ('k') hs.add ('a') hs.add ('a') // ajout d'éléments dupliqués // Affichage du LinkedHashSet System.out.println ('LinkedHashSet Contains:' + hs)}}

Production

comment faire une copie profonde en java
LinkedHashSet contient: [E, d, u, r, e, k, a]

Donc, en gardant à l'esprit que les doublons ne sont pas autorisés et que l'ordre d'insertion est préservé, LinkedHashSet est largement utilisé dans la création d'applications basées sur le cache. Eh bien, passons au sujet suivant de cet article 'LinkedHashList in Java'.

Exemples Java LinkedHashSet

Voici quelques exemples de programmes démontrant l'utilisation de LinkedHashSet dans

Calcul de la taille et recherche d'un élément dans le LinkedHashSet

import java.util. * classe publique Example1 {public static void main (String args []) {LinkedHashSet hs = new LinkedHashSet () // Ajout d'éléments au LinkedHashSet hs.add ('E') hs.add ('d' ) hs.add ('u') hs.add ('r') hs.add ('e') hs.add ('k') hs.add ('a') // Obtention de la taille du système LinkedHashSet .out.println ('La taille du LinkedHashSet est' + hs.size ()) // Vérification si le LinkedHashSet contient un élément ou non System.out.println ('Is B Present in the LinkedHashSet ?:' + hs. contains ('B')) // Vérification si le LinkedHashSet contient un élément ou non System.out.println ('Is E Present in the LinkedHashSet ?:' + hs.contains ('E'))}}

Production

La taille du LinkedHashSet est de 7 Est-ce que B est présent dans le LinkedHashSet?: False E est-il présent dans le LinkedHashSet?: True

Si l'élément est présent dans le programme HashSet renvoie vrai et au cas où l'élément n'est pas trouvé, le programme retourne faux .

Suppression d'un élément du LinkedHashSet

import java.util. * public class Example2 {public static void main (String args []) {LinkedHashSet hs = new LinkedHashSet () // Ajout d'éléments au LinkedHashSet hs.add ('E') hs.add ('d' ) hs.add ('u') hs.add ('r') hs.add ('e') hs.add ('k') hs.add ('a') System.out.println ('Original LinkedHashSet : '+ hs) // Suppression de l'élément e du LinkedHashSet System.out.println (' Removal Status: '+ hs.remove (' e ')) // Affichage du LinkedHashSet System.out.println mis à jour (' Updated LinkedHashSet: '+ hs)}}

Production

LinkedHashSet d'origine: [E, d, u, r, e, k, a] État de la suppression: vrai LinkedHashSet mis à jour: [E, d, u, r, k, a]

Comme vous pouvez le voir, l'ordre reste inchangé et l'élément est supprimé avec succès de l'ensemble.

Cela nous amène à la fin de cet article «LinkedHashSet in Java». J'espère que le Classe Java LinkedHashSet Les exemples dont nous avons discuté ici vous aideront à démarrer avec la programmation LinkedHashSet dans

Assurez-vous de pratiquer autant que possible et inversez votre expérience.

Vérifiez par Edureka, une entreprise d'apprentissage en ligne de confiance avec un réseau de plus de 250 000 apprenants satisfaits répartis dans le monde entier. Nous sommes là pour vous aider à chaque étape de votre voyage, pour devenir une autre question d'entrevue java, nous proposons un programme conçu pour les étudiants et les professionnels qui souhaitent devenir développeur Java.

Vous avez une question pour nous? Veuillez le mentionner dans la section commentaires de ce «LinkedHashSet en Java» article et nous vous répondrons dans les plus brefs délais.