第一级关联哈希地图
LinkedHashMap<String, LinkedHashMap<String, Integer>> level_1 = new LinkedHashMap<>();
第二级linkedhashmap`
LinkedHashMap<String, Integer> level_2 = new LinkedHashMap<>();
level_2.put("abcd", R.drawable.abcd);
把方法
level_1.put("ABCD", level_2);
现在我必须从上面的代码中读取数据
LinkedHashMap<String, LinkedHashMap<String, Integer>> abcd;
我有2个意图 - level_1和level_2
abcd.get(level_1).get(level_2)
这会发出警告
LinkedHashMap(String,Integer)可能不包含integer
类型的对象
我想分别读取String和Integer值,以便我可以填充textView和Imageview。
总结
如何从
中单独读取整数和stringfFrom innermap)LinkedHashMap<String, LinkedHashMap<String, Integer>>
答案 0 :(得分:0)
工作正常:
LinkedHashMap<String, LinkedHashMap<String, Integer>> level_1 = new LinkedHashMap<>();
LinkedHashMap<String, Integer> level_2 = new LinkedHashMap<>();
level_2.put("l2", 2);
level_1.put("l1", level_2);
System.out.println(level_1.get("l1").get("l2"));
您的问题是,当您调用get()
方法时,您实际上应该将您映射值的键作为参数。在这种情况下,您的密钥是String类型。