gpt4 book ai didi

java - 如何在android中提取hashmap的arraylist列表并循环遍历它?

转载 作者:行者123 更新时间:2023-12-01 22:05:47 24 4
gpt4 key购买 nike

我有一个 HashMap 的数组列表列表,如下所示。您能否帮助我了解如何循环遍历它以获取 key 并将 key 与特定数据进行比较,如果匹配则显示其各自的值。

List<ArrayList<HashMap>> li = new ArrayList<ArrayList<HashMap>>();
li = SyncSettings.labelSharedInstance;

下面是 hashmap 存储 View 的 arraylist 列表(作为引用,我也添加了 xml)。

enter image description here

<labels>
<label id="lblMS">
<text language="EN" value="Morning Sync"/>
<text language="DE" value="Morgan Sync"/>
</label>
<label id="lblES">
<text language="EN" value="Evening Sync"/>
<text language="DE" value="Sync Abend"/>
</label>
<label id="lblAS">
<text language="EN" value="Afternoon Sync"/>
<text language="DE" value="Sync Afternoon"/>
</label>
</labels>

最初,我将获取设备语言,并且需要使用 HashMap 中的语言检查设备语言。如果它匹配,我需要显示它各自的语言。

到目前为止我所取得的成就如下。

for (ArrayList<HashMap> entry : li) {
Set<String> keys = entry.keySet();
for (String key : keys) {
//I'm just seeing whether i'm doing in a right way or not. So i was just printing.But i was getting nothing
System.out.println("key = " + key);
System.out.println("value = " + value);
}

您能帮我进一步进行吗?谢谢。

最佳答案

假设提供了 xml,可以创建以下数据结构:

    List<ArrayList<HashMap<String, String>>> listSuper = new ArrayList<>();//List of label in your xml

ArrayList<HashMap<String, String>> listInner = new ArrayList<>();//Correspond to a label in your xml

HashMap<String, String> hashMapLblMs = new HashMap<>();
hashMapLblMs.put("EN", "Morning Sync");
hashMapLblMs.put("DE", "Morgan Sync");
listInner.add(hashMapLblMs);

HashMap<String, String> hashMaplblES = new HashMap<>();
hashMaplblES.put("EN", "Evening Sync");
hashMaplblES.put("DE", "Sync Abend");
listInner.add(hashMaplblES);

listSuper.add(listInner);

现在我们可以使用 for 循环来迭代:

for (int i = 0; i < listSuper.size(); i++) {
ArrayList<HashMap<String, String>> listInner1 = listSuper.get(i);
for (HashMap<String, String> map : listInner1) {
for (Map.Entry<String, String> entrySet : map.entrySet()) {
System.out.println("key = " + entrySet.getKey());
System.out.println("value = " + entrySet.getValue());
}
}
}

关于java - 如何在android中提取hashmap的arraylist列表并循环遍历它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32835529/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com