2012-05-14 32 views
8

Tôi có mộtLàm thế nào để sắp xếp multimap ổi? (KEY = DATE)

Multimap<Date,Invoice> multimap = ArrayListMultimap.create(); 

từ ổi. Tôi đã tự hỏi làm thế nào để SORT phím ngày trong multimap.

Hiện nay, tôi đang làm điều này:

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

và sau đó tôi lặp qua các iterator TreeSet. Bất kỳ ý tưởng làm thế nào để tránh gian lận này?

+2

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

Trả lời

16

Thành viên nhóm ổi tại đây.

Sử dụng TreeMultimap, hoặc nếu bạn cần để ánh xạ vào List s, sử dụng MultimapBuilder:

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

Tôi đã thử mã của bạn nhưng tôi không thể tìm ra cách để xây dựng nó với các lớp học của tôi. – adhg

+0

Bạn có thể viết dòng mã liên quan đến KEY = Date và V = Invoice không. Cảm ơn! – adhg

+0

Um. Thay thế chữ 'K' bằng' Ngày' và 'V' bằng' Hoá đơn', và nó sẽ hoạt động. –

Các vấn đề liên quan