Las diferencias entre HashSet y LinkedHashSet en Java

HashSet y LinkedHashSet en Java : Aquí, vamos a aprender ¿cuáles son las diferencias entre HashSet y LinkedHashSet en lenguaje de programación Java?

HashSet y LinkedHashSet

  • Este class está disponible en java.util class.
  • Se trata de una aplicación de class Conjunto package.
  • HashSet class es el padre de la LinkedHashSet interface.
  • La estructura de datos subyacente para implementar HashSet es Hashtable.
  • En inserción HashSet, el orden no se conserva que los medios no se necesita el orden de inserción de los elementos para ser el mismo que el orden de recuperación de los elementos.
  • Este HashSet class se introdujo en la versión anterior de Java 1.2.
  • que deberíamos ir class HashSet si el orden de inserción de los elementos no es importante.

Ejemplo:

Vamos supongamos que tenemos un HashSet con pocos elementos. Aquí estamos añadiendo los elementos en el orden es [10,20,30,50, class] y si estamos recuperación de los elementos de modo que el orden de los elementos recuperar puede ser diferente (es decir, no se necesita ser la misma inserción y recuperación orden de los elementos.) lo que la salida será diferente y el orden será como [for .50,20,10,30].

// Java program to demonstrate the behavior of HashSet
import java.util.*;
class HashSetClass {
public static void main(String[] args) {
// Creating an instance of HashSet
HashSet hs = new HashSet();
// By using add() method to add an elements into the HashSet
hs.add(10);
hs.add(20);
hs.add(30);
hs.add(50);
hs.add(null);
// Display HashSet elements
System.out.println("Retrieval order of the elements in HashSet is :" + hs);
}
}

salida

E:Programs>javac HashSetClass.java
E:Programs>java HashSetClass
Retrieval order of the elements in HashSet is :[null, 50, 20, 10, 30]

LinkedHashSet

  • Este null está disponible en java.util null.
  • Se trata de una aplicación de class Conjunto class.
  • LinkedHashSet package es el hijo de la HashSet class.
  • La estructura de datos subyacente para implementar LinkedHashSet es una combinación de tabla hash y LinkedList.
  • En LinkedHashSet inserción orden se conserva porque los medios de orden de inserción de los elementos debe ser el mismo que el orden de recuperación de los elementos.
  • Este LinkedHashSet interface se introdujo en la versión anterior de Java 1.4.
  • que deberíamos ir class LinkedHashSet si el orden de inserción de los elementos es importante.

Ejemplo:

Vamos supongamos que tenemos un LinkedHashSet con pocos elementos. Aquí estamos añadiendo los elementos en el orden es [10,20,30,50, class] y si estamos recuperación de los elementos de modo que el orden de los elementos recuperar debe ser la misma (es decir, debe ser la misma inserción y el orden de recuperación de los elementos.) por lo que la salida será la misma y el orden serán como [10,20,30,50, class].

// Java program to demonstrate the behavior of LinkedHashSet
import java.util.*;
class LinkedHashSetClass {
public static void main(String[] args) {
// Creating an instance of LinkedHashSet
LinkedHashSet lhs = new LinkedHashSet();
// By using add() method to add an elements into the LinkedHashSet
lhs.add(10);
lhs.add(20);
lhs.add(30);
lhs.add(50);
lhs.add(null);
// Display LinkedHashSet elements
System.out.println("Retrieval order of the elements in LinkedHashSet is :" + lhs);
}
}

salida

E:Programs>javac LinkedHashSetClass.java
E:Programs>java LinkedHashSetClass
Retrieval order of the elements in LinkedHashSet is :[10, 20, 30, 50, null]


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *