以下是我所拥有的:
HashMap<String,HashMap<Integer,Integer>> data =
new HashMap<String,HashMap<Integer,Integer>>();
但我在添加值时遇到了问题,因为内部hashmap没有名称(注意:它不应该有(。实际上,我正在尝试将数组列表添加到HashMap中的第一个Integer中,所以我正在尝试以下操作:
data.put(var, data.get(array.get(x), y));
这是它非常不喜欢的,我完全不知道怎么做。
注意
HashMap<String,HashMap<Integer,Integer>> data =
new HashMap<String,HashMap<Integer,Integer>>();
仅创建"外部"HashMap实例。在该语句之后,您有一个空的HashMap,它将Strings作为键,HashMap<Integer, Integer>
作为值。
您可以使用以下命令将HashMap<Integer, Integer>
的实例添加到data
:
data.put("myKey", new HashMap<Integer, Integer>());
之后,您可以将整数值添加到第二个HashMap:
data.get("myKey").put(123, 456); // use 123 as key and 456 as value
取回价值:
data.get("myKey").get(123); // returns 456
您必须首先获得内部哈希图:
HashMap<Integer,Integer> innerData = data.get(var);
然后你可以把你的价值投入其中:
innerData.put(x, y);
就这样做吧:
data.put( var, new HashMap(intKey, intVal));
其中,intKey和intVal是Integer类型Key和Integer类型值。
HashMap<String,HashMap<Integer,Integer>> data =
new HashMap<String,HashMap<Integer,Integer>>();
((Map)data.get( "keyname" )).get(1);
随后:
((Map)data.get( "keyname" )).get( 1 ).put(2);