LinkedHashMap es una clase predefinida en Java que es similar a HashMap, contiene la clave y su valor respectivo a diferencia de HashMap, en LinkedHashMap se conserva el orden de inserción.
Vamos a convertir LinkedHashMap a ArrayList. Un mapa almacena datos en un par de clave y valor mientras convierte un LinkedHashMAp en ArrayList, almacenaremos las claves del mapa en una lista separada, de manera similar almacenaremos el valor en otra lista, busque un ejemplo y un algoritmo para una mejor comprensión.
Ejemplo :
Input : { 1 = 3, 4 = 2, 6 = 5, 2 = 1 } output : Key -> [ 1, 4, 6, 2 ] value -> [ 3, 2, 5, 1] Input : { 2 = 10, 4 = 4, 6 = 23, 8 = 12 } output : Key -> [ 2, 4, 6, 6 ] value -> [ 10, 4, 23, 12]
Algoritmo:
- Use el bucle For/while para la iteración en LinkedHashMap
- Tome dos ArrayList diferentes para las claves y sus valores respetados.
- Ahora itere a través de for-Each Loop en LinkedhashMap y agregue claves y valores con su ArrayList definido
Pseudocódigo:
for (Map.Entry<Object, Object> it : l.entrySet()) { l1.add(it.getKey()); l2.add(it.getValue()); } Here, l is LinkedHashMap l1 is Arraylist for keys l2 is Arraylist for Values
Ejemplo:
Java
// Java program to convert LinkedHashMap // to List import java.util.*; import java.io.*; class GFG { public static void main(String[] args) { LinkedHashMap<Object, Object> l = new LinkedHashMap<>(); l.put(2, 5); l.put(4, 6); l.put(5, 16); l.put(6, 63); l.put(3, 18); // Taking two ArrayList ArrayList<Object> l1 = new ArrayList<>(); ArrayList<Object> l2 = new ArrayList<>(); for (Map.Entry<Object, Object> it : l.entrySet()) { l1.add(it.getKey()); l2.add(it.getValue()); } System.out.print("Key -> "); System.out.println(l1); System.out.print("Value -> "); System.out.println(l2); } }
Producción
Key -> [2, 4, 5, 6, 3] Value -> [5, 6, 16, 63, 18]
Complejidad de tiempo : O(n)
Publicación traducida automáticamente
Artículo escrito por kushwahp1234 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA