展平SetMultiMap并保留插入顺序

use*_*629 0 java multimap guava

LinkedHashMultimap在我的项目中使用.我需要在保留插入顺序的同时展平值.例如用

SetMultimap<String, Integer> m =  LinkedHashMultimap.create();
m.put("a", 1);
m.put("b",2);
m.put("a",3);
Run Code Online (Sandbox Code Playgroud)

我得到以下输出

a : [1,3]
b : 2
Run Code Online (Sandbox Code Playgroud)

但是我需要

a : 1
b : 2
a : 3
Run Code Online (Sandbox Code Playgroud)

或者我需要输出在List中

[a,1,b,2,a,3]
Run Code Online (Sandbox Code Playgroud)

PS我正在使用,LinkedHashMultimap因为我不想复制valuesa key,我需要保留插入顺序

我怎么能这样做,所以我可以迭代上面的输出进行进一步处理?

Dan*_*ler 5

条目将被返回并按插入顺序进行迭代,因此您可以执行以下操作,以免失去优势Multimaps.

for (Map.Entry<String, Integer> entry : m.entries()) {
    System.out.println(entry.getKey() + " : " + entry.getValue());
}
Run Code Online (Sandbox Code Playgroud)