LinkedList en java es básicamente una parte del marco de colección presente en el paquete java.util. Es la implementación de la estructura de datos LinkedList que almacena elementos de manera no contigua dentro de la memoria.
Cinco formas de iterar una LinkedList son:
- Uso del bucle for
- Usando el ciclo while
- Usar bucle for mejorado
- Usando iterador
- Usando el método forEach()
Método 1: Usando For Loop
Java
// Java program for iterating the LinkedList // using For loop import java.util.LinkedList; public class GFG { public static void main(String[] args) { // Creating a LinkedList of Integer type LinkedList<Integer> linkedList = new LinkedList<>(); // Inserting some Integer values to our LinkedList linkedList.add(40); linkedList.add(44); linkedList.add(80); linkedList.add(9); // LinkedList after insertions: [40, 44, 80, 9] // Calling the function to iterate our LinkedList iterateUsingForLoop(linkedList); } // Function to iterate the LinkedList using a simple for // loop public static void iterateUsingForLoop(LinkedList<Integer> linkedList) { System.out.print( "Iterating the LinkedList using a simple for loop : "); for (int i = 0; i < linkedList.size(); i++) { System.out.print(linkedList.get(i) + " "); } } }
Iterating the LinkedList using a simple for loop : 40 44 80 9
Método 2: usar el bucle while
Podemos iterar nuestra LinkedList usando un ciclo while de una manera muy similar a como lo hicimos usando un ciclo for.
Java
// Java program for iterating the LinkedList // using while loop import java.util.LinkedList; public class GFG { public static void main(String[] args) { // Creating a LinkedList of Character type LinkedList<Character> vowels = new LinkedList<>(); // Inserting some Character values to our LinkedList vowels.add('a'); vowels.add('e'); vowels.add('i'); vowels.add('o'); vowels.add('u'); // LinkedList after insertions: ['a', 'e', 'i', 'o', 'u'] // calling the function to iterate our LinkedList iterateUsingWhileLoop(vowels); } // Function to iterate our LinkedList using while loop public static void iterateUsingWhileLoop(LinkedList<Character> vowels){ System.out.print("Iterating the LinkedList using while loop : "); int i=0; while(i<vowels.size()){ System.out.print(vowels.get(i) + " "); i++; } } }
Iterating the LinkedList using while loop : a e i o u
Método 3: Usar bucle for mejorado
Usando el bucle for mejorado, podemos iterar secuencialmente una LinkedList. La ejecución del bucle for mejorado finaliza después de que visitamos todos los elementos. Veamos un ejemplo de iteración de LinkedList usando el bucle for mejorado.
Java
// Java program for iterating the LinkedList // using Enhanced For loop import java.util.LinkedList; public class GFG { public static void main(String[] args) { // Creating a LinkedList of String type LinkedList<String> linkedList = new LinkedList<>(); // Inserting some String values to our LinkedList linkedList.add("Geeks"); linkedList.add("for"); linkedList.add("Geeks"); // LinkedList after insertions: ["Geeks", "for", // "Geeks] // Calling the function to iterate our LinkedList iterateUsingEnhancedForLoop(linkedList); } // Function to display LinkedList using Enhanced for // loop public static void iterateUsingEnhancedForLoop(LinkedList<String> linkedList) { System.out.print( "Iterating the LinkedList using enhanced for loop : "); for (String listElement : linkedList) { System.out.print(listElement + " "); } } }
Iterating the LinkedList using enhanced for loop : Geeks for Geeks
Método 4: usar el iterador
- Para iterar LinkedList usando el iterador, primero creamos un iterador para la lista actual y seguimos imprimiendo el siguiente elemento usando el método next() hasta que el siguiente elemento exista dentro de LinkedList.
- Verificamos si LinkedList contiene el siguiente elemento usando el método hasNext() .
Java
// Java program for iterating the LinkedList // using Iterator import java.util.Iterator; // Importing LinkedList class from // java.util package import java.util.LinkedList; public class GFG { public static void main(String[] args) { // Creating a LinkedList of Integer Type LinkedList<Integer> linkedList = new LinkedList<>(); // Inserting some Integer values to our LinkedList linkedList.add(5); linkedList.add(100); linkedList.add(41); linkedList.add(40); linkedList.add(7); // LinkedList after insertions : [5, 100, 41, 40, 7] // Calling the function to iterate our LinkedList iterateUsingIterator(linkedList); } // Function to iterate the Linked List using Iterator public static void iterateUsingIterator(LinkedList<Integer> linkedList){ System.out.print("Iterating the LinkedList using Iterator : "); // Creating an Iterator to our current LinkedList Iterator it = linkedList.iterator(); // Inside the while loop we check if the next element // exists or not if the next element exists then we print // the next element and move to it otherwise we come out // of the loop // hasNext() method return boolean value // It returns true when the next element // exists otherwise returns false while(it.hasNext()){ // next() return the next element in the iteration System.out.print(it.next() + " "); } } }
Iterating the LinkedList using Iterator : 5 100 41 40 7
Método 5: Usando el método forEach()
- El método forEach() se introdujo en Java8.
- Realiza la tarea especificada para cada elemento del iterable hasta que se hayan procesado todos los elementos o la acción produzca una excepción.
Sintaxis:
public void forEach(Consumer<? super E> action)
Java
// Java program for iterating the LinkedList // using For Each loop import java.util.LinkedList; public class GFG { public static void main(String[] args) { // Creating a LinkedList of Integer Type LinkedList<Integer> linkedList = new LinkedList<>(); // Inserting some Integer values to our LinkedList linkedList.add(1); linkedList.add(2); linkedList.add(3); linkedList.add(4); linkedList.add(5); // LinkedList after insertions: [1, 2, 3, 4, 5] // Calling the function to iterate our LinkedList iterateUsingForEach(linkedList); } public static void iterateUsingForEach(LinkedList<Integer> linkedList) { System.out.print( "Iterating the LinkedList using for each function : "); // Calling the forEach function to iterate through // all the elements inside the Linked List linkedList.forEach( (element) -> System.out.print(element + " ")); } }
Iterating the LinkedList using for each function : 1 2 3 4 5
Publicación traducida automáticamente
Artículo escrito por shivamsingh00141 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA