HashSet amplía AbstractSet e implementa la interfaz Set . Crea una colección que utiliza una tabla hash para el almacenamiento. La clase no garantiza el orden constante de los elementos a lo largo del tiempo, pero permite el elemento nulo. La estructura de datos subyacente para HashSet es Hashtable. HashSet también implementa interfaces serializables y clonables.
Declaración de un HashSet:
la clase pública HashSet<E> extiende AbstractSet<E> implementa Set<E>, Cloneable, Serializable
donde E representa el tipo de elementos a almacenar en el HashSet.
Las tres formas diferentes en que podemos obtener elementos por índice en un HashSet son:
- Usando una array
- Usando un bucle for
- Usando ArrayList
Método 1: Usar array
- Importe el paquete Java requerido java.util
- Declarar el HashSet usando Set Interface
- Agrega elementos al HashSet usando el método add()
- Mostrar el HashSet para determinar el orden de los elementos
- Convierta HashSet en Array usando el método toArray()
- Accede a los elementos por índice.
Java
// Java Program to get HashSet elements by index using Array // import required package - java.util import java.util.*; class GFG { public static void main(String[] args) { // Declare HashSet using Set Interface Set<String> GFG = new HashSet<String>(); // Add elements into HashSet using add() GFG.add("Welcome"); GFG.add("To"); GFG.add("Geeks"); GFG.add("For"); GFG.add("Geek"); // Displaying HashSet System.out.println("HashSet contains: " + GFG); // Notice the order of elements may be different // than insertion // Converting HashSet to Array String[] Geeks = GFG.toArray(new String[GFG.size()]); // Accessing elements by index System.out.println("Element at index 3 is: " + Geeks[3]); } }
HashSet contains: [Geek, Geeks, For, Welcome, To] Element at index 3 is: Welcome
Método 2: usar un bucle for
- Importar paquetes requeridos – java.util
- Declarar HashSet usando Set Interface
- Agrega elementos al HashSet usando el método add()
- Mostrar el HashSet para determinar el orden de los elementos
- Determinar el índice deseado
- Implementar un bucle for para acceder a los elementos por índice
Java
// Java Program to get elements of HashSet by index using a // for loop import java.util.*; class GFG { public static void main(String[] args) { // Declare HashSet using Set Interface Set<String> GFG = new HashSet<String>(); // Add elements into HashSet using add() GFG.add("Welcome"); GFG.add("To"); GFG.add("Geeks"); GFG.add("For"); GFG.add("Geek"); // Displaying HashSet System.out.println("HashSet contains: " + GFG); // Notice the order of elements may be different // than insertion // Iterator declaration int currentIndex = 0; // Desired Index int desiredIndex = 3; for (String element :GFG) { // Implementing for loop if (currentIndex == desiredIndex) { System.out.println("Element at index 3 is: "+ element); break; } currentIndex++; } } }
HashSet contains: [Geek, Geeks, For, Welcome, To] Element at index 3 is: Welcome
Método 3: Usar ArrayList
- Importar paquetes requeridos java.util
- Declarar HashSet usando Set Interface
- Agrega elementos al HashSet usando el método add()
- Mostrar el HashSet para determinar el orden de los elementos
- Convertir HashSet a ArrayList
- Acceder a elementos por índice
Java
// Java Program to get elements of HashSet by index using // ArrayList import java.util.*; class GFG { public static void main(String[] args) { // Declare HashSet using Set Interface Set<String> GFG = new HashSet<String>(); // Add elements into HashSet using add() GFG.add("Welcome"); GFG.add("To"); GFG.add("Geeks"); GFG.add("For"); GFG.add("Geek"); // Displaying HashSet System.out.println("HashSet contains: " + GFG); // Notice the order of elements may be different // than insertion // Converting HashSet to ArrayList List<String> list = new ArrayList<String>(GFG); System.out.println("Element at index 3 is: " + list.get(3)); } }
HashSet contains: [Geek, Geeks, For, Welcome, To] Element at index 3 is: Welcome
Publicación traducida automáticamente
Artículo escrito por deepthimgs y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA