Tôi sắp xếp danh sách dựa trên nhiều trường.Làm cách nào để đảo ngược bộ sưu tập Groovy?
sortedList.sort {[it.getAuthor(), it.getDate()]}
Điều này làm việc tốt, nhưng tôi muốn ngày bị đảo ngược và reverse()
không hoạt động.
Làm cách nào để sắp xếp tác giả theo thứ tự tăng dần nhưng sắp xếp ngày theo thứ tự giảm dần (ngược lại)?
Ví dụ về những gì tôi muốn:
Author Date
Adam 12/29/2011
Adam 12/20/2011
Adam 10/10/2011
Ben 11/14/2011
Curt 10/17/2010
Ví dụ về những gì tôi có:
Author Date
Adam 10/10/2011
Adam 12/20/2011
Adam 12/29/2011
Ben 11/14/2011
Curt 10/17/2010
Awesome, cảm ơn rất nhiều! – ubiquibacon
bạn cũng có thể rút ngắn điều này lên một lớp lót (và bỏ qua một kiểm tra rõ ràng nếu có) với: sortList.sort {a, b -> a.author <=> b.author?: B.date <=> a.date} –
@TedNaleid - Cảm ơn vì tiền hỗ trợ; Tôi đã xem xét rút ngắn nó xuống, nhưng quyết định để nó vì lợi ích của sự hiểu biết. Tôi sẽ đưa bạn vào đó, mặc dù, cho đầy đủ. –