如何在Android中打印HashMap中的所有键和值?

我对Android开发非常新,并且我正在尝试在Android示例项目中使用HashMap。 现在,我正在做学习android的示例项目。 我只是将键和值存储在HashMap中,我想在EditView中显示键和它们的值。 我在我的示例项目中遵循以下代码。 但是,第一个键和值只能在EditView中打印。

   Map<String, String> map = new HashMap<String,String>();
   map.put("iOS", "100");
   map.put("Android", "101");
   map.put("Java", "102");
   map.put(".Net", "103");

   Set keys = map.keySet();

   for (Iterator i = keys.iterator(); i.hasNext(); ) {
       String key = (String) i.next();
       String value = (String) map.get(key);
       textview.setText(key + " = " + value);
   }

在EditView iOS = 100中仅打印。 我想要在EditText中打印所有的键和它们的值。 任何人都可以告诉我我在哪里做错了? 提前致谢。


首先,你的代码有错误,即。 您在for循环中缺少分号和右括号。

然后,如果您尝试将值附加到视图中,则应该使用textview.appendText(),而不是.setText()。

这里有一个类似的问题:如何在Android TextView中更改文本


for (Map.Entry<String,String> entry : map.entrySet()) {
  String key = entry.getKey();
  String value = entry.getValue();
  // do stuff
}

这是因为你的TextView在每次迭代中都会接收到新的文本,并抛弃掉前一个值。 通过StringBuilder连接字符串并在循环后设置TextView值。 你也可以使用这种类型的循环:

for (Map.Entry<String, String> e : map.entrySet()) {
    //to get key
    e.getKey();
    //and to get value
    e.getValue();
}
链接地址: http://www.djcxy.com/p/18003.html

上一篇: How to print all key and values from HashMap in Android?

下一篇: How to get all request params in a map in Spring controller?