如何从hashmap获取一列值

时间:2013-12-11 07:54:52

标签: java android listview hashmap

我有一个hashmap listview,其中包含从数据库中检索的四个键和多个值。现在我可以从FOODID2,FOODNAME2,PRICE2,RATING2的键中获取所有值,并通过toast显示。但我想要的只是显示键(FOODID2)的值。有可能吗?如果我错了,请纠正我。谢谢!

for (int i=0; i<data.size(); i=i+4)
    {   
        HashMap<String, String> map = new HashMap<String, String>();

        map.put(FOODID2, (String) data.get(i));
        map.put(FOODNAME2, (String) data.get(i+1));
        map.put(PRICE2, (String) data.get(i+2));
        map.put(RATING2, (String) data.get(i+3));

        LIST2.add(map);

        for(Entry<String, String> entry: map.entrySet())
        {
            if(entry.getKey().equals(FOODID2))
            {
                Toast.makeText(getApplicationContext(),
                "EXISTS "  + entry.getKey(), Toast.LENGTH_LONG)
                .show();
            }
        }   
    }

4 个答案:

答案 0 :(得分:0)

您可以循环map.keySet()获取所有密钥,循环map.values()以获取所有值。

答案 1 :(得分:0)

为什么不只是map.get(FOODID2)?就是这样......

StringBuilder sb = new StringBuilder();
for (HashMap<String, String> map : LIST2) {
  if (sb.length() > 0) {
    sb.append(", ");
  }
  sb.append("EXISTS " + map.get(FOODID2));
}

答案 2 :(得分:0)

获取entry.getKey()并验证这一点 if(entry.getKey()。equls(“你的钥匙名”)) {     //这里你可以打印出toaste。 }

答案 3 :(得分:0)

您可以使用hashMap.get(key)获取特定密钥的值。 或者在您的代码中,您可以使用if语句来检查密钥。