CodeGym/Blog Java/Random-ES/Método HashSet contiene () en Java
Autor
John Selawsky
Senior Java Developer and Tutor at LearningTree

Método HashSet contiene () en Java

Publicado en el grupo Random-ES

¿Qué es un HashSet?

HashSet es un tipo de datos integrado en Java y, en términos simples, puede decir "HashSet es una colección desordenada de elementos únicos". Echa un vistazo a un ejemplo básico:Método HashSet contiene () en Java - 2
Fig. 1: una ilustración que muestra ejemplos válidos e inválidos de un HashSet
(Antes de continuar, esperamos que conozca los términos hash y tablas hash ). HashSet extiende ( extiende significa que una clase se hereda de otra clase) AbstractSet e implementa la interfaz Set. Aquí hay algunos puntos que debe considerar antes de trabajar con HashSets:
  • Crea una colección ( colección significa una sola unidad de objetos, por ejemplo: ArrayList, LinkedList, Vector, etc.) que utiliza una tabla hash para el almacenamiento.
  • No se permiten valores duplicados en un HashSet.
  • Puede insertar valores "nulos" en un HashSet.
  • No se mantiene ningún orden de inserción. Entonces, si está buscando insertar elementos en orden, un HashSet será una mala opción para sus requisitos.
  • Si desea obtener/recuperar un elemento en tiempo constante (O (1)), entonces un HashSet es uno de los mejores enfoques que puede tomar.

¿Qué es el método HashSet.contains()?

HashSet.contains() es un método booleano para verificar si un elemento está presente en una instancia de HashSet o no. En pocas palabras, si el conjunto contiene el elemento deseado. Java.util.HashSet proporciona una implementación eficiente para ello. Permítanos mostrarle cómo puede usarlo de manera efectiva para resolver sus consultas.

contiene () con enteros

import java.util.HashSet;

public class HashSetDemo {
   public static void main(String[] args) {

       // Declare your hash set
       HashSet digits = new HashSet();

       digits.add(0);
       digits.add(1);
       digits.add(2);
       digits.add(3);
       digits.add(4);
       digits.add(5);
       digits.add(null);
       System.out.println("All elements in hashset:\t" + digits);

       // Try adding duplicates
       digits.add(5);
       digits.add(2);
       System.out.println("After adding duplicates: \t" + digits);

       System.out.println("\n-------Using Contains Method-------");
       // Check out if the following digits exist in the hashset
       System.out.println("digits.contains(0) : " + digits.contains(0));
       System.out.println("digits.contains(2) : " + digits.contains(2));
       System.out.println("digits.contains(3) : " + digits.contains(7));
       System.out.println("digits.contains(null) : " + digits.contains(null));
   }
}
Producción
Todos los elementos en hashset: [0, nulo, 1, 2, 3, 4, 5] Después de agregar duplicados: [0, nulo, 1, 2, 3, 4, 5] -------Usando el método Contiene------- digits.contains(0) : verdadero digits.contains(2) : verdadero digits.contains(3) : falso digits.contains(null) : verdadero

contiene () con cadenas

Eche un vistazo a otro ejemplo del método contains() con Strings .
import java.util.HashSet;
public class HashSetDemo {
     public static void main(String[] args) {

	  // Try working with another hash set of String type
	  HashSet rainbow = new HashSet();

        // Adding elements into HashSet using add()
        rainbow.add("Red");
        rainbow.add("Orange");
        rainbow.add("Yellow");
        rainbow.add("Green");
        rainbow.add("Blue");
        rainbow.add("Indigo");
        rainbow.add("Violet");


        // Let's traverse the hashset
        System.out.println("Traversing the rainbow:");
        for (String i : rainbow){
             System.out.println(i);
        }
       // Check out if rainbow contains this color or not
    	 System.out.println("\n-------Using Contains Method-------");

        System.out.println("rainbow.contains(\"Yellow\"): \t" + rainbow.contains("Yellow"));
        System.out.println("rainbow.contains(\"White\"): \t"  + rainbow.contains("White"));
        System.out.println("rainbow.contains(\"Lavender\"): \t"  + rainbow.contains("Lavender"));
        System.out.println("rainbow.contains(\"Red\"): \t"  + rainbow.contains("Red"));

        // Remove a color from rainbow using remove()
        rainbow.remove("Red");

        // Now consume  set contains() method again to check if it's still present
        System.out.println("rainbow.contains(\"Red\"): \t"  + rainbow.contains("Red"));

        System.out.println("\nAfter removing Red: " + rainbow);
	}
}
Producción
Atravesando el arcoiris: Rojo Violeta Amarillo Azul Índigo Naranja Verde -------Usando el método Contiene------- rainbow.contains("Amarillo"): verdadero arcoiris.contiene("Blanco"): falso arcoiris.contiene("Lavanda"): falso arcoiris.contiene("Rojo"): verdadero arcoiris.contiene("Rojo"): falso Después de quitar el Rojo: [Violeta, Amarillo, Azul, Índigo, Naranja, Verde]
Como puede ver, el orden de salida es diferente del orden de colocar los elementos en el Hashset.

Conclusión

El método contains() para HashSets es bastante simple de usar. Sin embargo, en caso de cualquier confusión, siempre puede consultar esta publicación. ¡Feliz codificación! :)
Comentarios
  • Populares
  • Nuevas
  • Antiguas
Debes iniciar sesión para dejar un comentario
Esta página aún no tiene comentarios