Mi objetivo es crear un mapa de mapas para que pueda recuperar información del mapa exterior por su clave y luego acceder a sus mapas "internos" por sus claves.Mapa de mapas: ¿cómo mantener los mapas interiores como mapas?
Sin embargo, cuando obtuve cada mapa interior, el mapa que creé originalmente se convirtió en un Objeto y no puedo usar la clave para acceder a su valor como lo hago con el mapa exterior.
Para aprender de sus expertos, me gustaría saber cómo mantener todos los mapas como mapas. O, ¿es posible?
aquí es mi programa de ejercicios:
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class MapExample {
public static void main(String[] args) {
Map<Object,String> mp=new HashMap<Object, String>();
// adding or set elements in Map by put method key and value pair
mp.put(new Integer(2), "Two");
mp.put(new Integer(1), "One");
mp.put(new Integer(3), "Three");
mp.put(new Integer(4), "Four");
Map<Object,String> mp2=new HashMap<Object, String>();
mp2.put(new Integer(2), "Two2");
mp2.put(new Integer(1), "One2");
mp2.put(new Integer(3), "Three2");
mp2.put(new Integer(4), "Four2");
Map<Object,String> mpMaps=new HashMap();
mpMaps.put("Map1",mp);
mpMaps.put("Map2",mp2);
System.out.println("This is a map of Maps: " + mpMaps);
for (int i=0;i<mpMaps.size();i++){
ArrayList a = new ArrayList(mpMaps.keySet());
Object o=a.get(i);
System.out.println("all together: " + mpMaps.size() + "each element is: " + o + " value: " + mpMaps.get(o));
}
}
}
SOLUCIONES:
Map<Object,Map<Object,String>
Map<String, Object> mpMaps=new HashMap<String, Object>();
por Ameer y sleske
Piensa que otra posible solución para tu propósito es tener un solo hashmap que tenga como claves pares de valores. Esto reduciría la complejidad de todo (también porque con la sintaxis de los genéricos reales es bastante doloroso). – Jack
sí, eso es bueno! ¡gracias! Mi necesidad proviene de un proyecto que primero necesito ordenar una lista de mapas, luego recupero los valores de cada mapa para su uso posterior. – john