2012-05-14 119 views
8

我有一个如何排序番石榴multimap? (KEY = DATE)

Multimap<Date,Invoice> multimap = ArrayListMultimap.create(); 
从番石榴

。我想知道如何在多图中排序Date键。

目前,我这样做:

 Iterator<Date> dateItr = multimap.keySet().iterator(); 
     Set<Date> treeSet = new TreeSet<Date>(Collections.reverseOrder()); 

,后来我通过TreeSet的迭代循环。任何想法如何避免这种规避?

+2

[TreeMultimap](http://guava-libraries.googlecode.com/svn/tags/release03/javadoc/ com/google/common/collect/TreeMultimap.html) –

回答

16

番石榴团队成员在这里。

使用TreeMultimap,或者如果你需要映射到List S,使用MultimapBuilder

return MultimapBuilder.treeKeys().arrayListValues().build() 
+0

我尝试了你的代码,但我无法弄清楚如何用我的类来构造它。 – adhg

+0

您能否写下与KEY = Date和V = Invoice相关的代码行。谢谢! – adhg

+0

嗯。用'Date'和'V'替换字母'K'和'Invoice',这就可以工作。 –