如何使用 HashMap 并在 ArrayAdapter 中使用它来显示微调器中的值

Posted

技术标签:

【中文标题】如何使用 HashMap 并在 ArrayAdapter 中使用它来显示微调器中的值【英文标题】:How to use a HashMap and use it in an ArrayAdapter to display the values in a spinner 【发布时间】:2020-05-08 22:58:48 【问题描述】:

我有一个包含键和值的 HashMap,它们都是字符串。我从不同的活动中获取 HashMap。我正在尝试使用 HashMap 并将其放入数组适配器中,以便可以显示带有 HashMap 值的微调器。我试图遍历 HashMap 并没有任何运气。

HashMap<String, String> examCodesMap = (HashMap<String, String>) MainActivity.examCodesMap;

【问题讨论】:

请分享旋转适配器的代码 我还没做。 你需要将Hashmap转换成String[],也许这对***.com/questions/1090556/…有帮助 【参考方案1】:
HashMap<String, String> examCodesMap = new HashMap<String, String>();
Spinner spinner = (Spinner) findViewById(R.id.spinner);
ArrayList<String> arrayList = new ArrayList<>();

for(Map.Entry<String, HashMap> entry : selects.entrySet()) 
    String key = entry.getKey();
    String value = entry.getValue();

    arrayList.add(value);


ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.spinner, arrayList);

【讨论】:

什么是selects.entrySet() Java 中的HashMap entrySet() 方法 Java 中的 java.util.HashMap.entrySet() 方法用于从哈希中包含的相同元素创建一个集合地图。它基本上返回哈希映射的集合视图,或者我们可以创建一个新集合并将映射元素存储到其中。进一步阅读here

以上是关于如何使用 HashMap 并在 ArrayAdapter 中使用它来显示微调器中的值的主要内容,如果未能解决你的问题,请参考以下文章

遍历多个hashmap键并在jsp上显示[重复]

Data.HashMap 的分析

高并发下的HashMap

HashMap遍历

在Flink中广播HashMap

Java的HashMap