Multimap Iterator在Java中检索多个值

时间:2015-06-16 12:30:40

标签: java iterator multimap

有没有办法在迭代时访问每个值,以便从Apache commons的java MultiValueMap中将其赋值给变量?我有一个键和两个可能的值,我想提取稍后写入表的每个迭代。

目前,下面为pair.getValue()生成两个值。

public void setValues (MultiValueMap map)
{
    Iterator it = map.entrySet().iterator();
    while (it.hasNext())
    {
        Map.Entry pair = (Map.Entry)it.next();
        String id = pair.getKey().toString();
        String name = pair.getValue().toString();
    }
}

我为了清楚起见对此进行了编辑,以下建议有助于使用Collection values = map.getCollection(id);

1 个答案:

答案 0 :(得分:1)

如果我理解你的问题,你想获得所有键的值列表:

    Iterator it = map.keySet().iterator();
    while (it.hasNext())
    {
        String id = (String)it.next();
        Collection<?> values = map.getCollection(id);
        // loop on values and do whatever you need ...
    }