如何反向迭代嵌套的multimap

时间:2014-03-24 05:56:38

标签: java iterator guava multimap

我有一个嵌套的mulimap,需要以反向顺序迭代外层。

private Multimap<Integer, Multimap<String, String>> stockMatrix 
    = ArrayListMultimap.create();

前向迭代很好

for (Multimap<String, String> oneRow : stockMatrix.values()) {
..........
}

我查看了使用stockMatrix.size()中的for循环,但这给了我所有内部MultiMap对的计数,而不仅仅是外层的数字。

1 个答案:

答案 0 :(得分:1)

将所有值隐藏到List并反转List,然后迭代它:

final List<Multimap<String, String>> allValues 
    = Lists.newArrayList(stockMatrix.values());

Collections.reverse(allValues);

// iterate over allValues