2012-05-14 6 views
8

Iはグアバからguava 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のイテレータを通じて、後でIループ:

現在、私はこれをやっています。どのようにこの迂回を回避するための任意のアイデア?

+2

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

答えて

16

ここグアバのチームメンバーです。

使用TreeMultimap、またはあなたがMultimapBuilderを使用し、List Sにマップする必要がある場合:

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

私はあなたのコードを試しましたが、私のクラスでそれを構築する方法を理解できません。 – adhg

+0

KEY = DateとV = Invoiceに関連するコード行を記述してください。ありがとう! – adhg

+0

郵便番号。 'K'という文字を' Date'と 'V'を' Invoice'に置き換えれば、それはうまくいくでしょう。 –

関連する問題