我在计算如何迭代这个结构时遇到了问题。
ArrayList<HashMap<String, HashMap<String, String>>> list
你能帮我弄清楚怎么走整个结构吗?
这是到目前为止我所做的,但我下一步要做什么?我需要得到最深层的数据
for (HashMap<String, String> map : data)
for (Entry<String, String> entry : map.entrySet())
这个怎么样?
ArrayList<HashMap<String, HashMap<String, String>>> list = new ArrayList<>();
for (HashMap<String, HashMap<String, String>> m : list) {
for (Map.Entry<String, HashMap<String, String>> e : m.entrySet()) {
String key1 = e.getKey();
for (Map.Entry<String, String> me : e.getValue().entrySet()) {
String key2 = me.getKey();
String value = me.getValue();
}
}
}
注意,你应该使用对象的接口形式:
List<Map<String, Map<String, String>>> list = new ArrayList<>();
for (Map<String, Map<String, String>> m : list) {
// All Maps.
for (Map.Entry<String, Map<String, String>> e : m.entrySet()) {
// Outer key.
String key1 = e.getKey();
for (Map.Entry<String, String> me : e.getValue().entrySet()) {
// Inner key.
String key2 = me.getKey();
// The String value.
String value = me.getValue();
}
}
}