[java] 내림차순으로 날짜 별 정렬 목록 - 그루비 광기



Answers

어때?

things.sort{it.dtCreated}
Collections.reverse(things)

좀 더 유용한 목록 유틸리티를 찾으 here

Question

나는 순서에 따라 날짜별로 객체 목록을 정렬 할 수 없습니다.

이게 내 수업 이잖아.

class Thing {

Profil profil
String status = 'ready'
Date dtCreated = new Date()
}

메서드 안에 나는 List things 생성하고있다.

            List profiles = profil.xyz?.collect { Profil.collection.findOne(_id:it) }

            List things = []

그런 다음 각 프로필의 각 관련 사물과 함께 목록을 채 웁니다

            profiles.each() { profile,i ->
                if(profile) {
                    things += Thing.findAllByProfilAndStatus(profile, "ready", [sort: 'dtCreated', order: 'desc']) as 
                 }

좋아, 이제 things 에 많은 것들이 있습니다. unfortunatly [order: 'desc'] 는 각 집합에 적용되고 dtCreated가 전체 목록을 정렬해야합니다.

            things.sort{it.dtCreated}

좋아요. 이제는 모든 것이 날짜순으로 정렬되었지만 잘못된 순서로 가장 최근의 것이 목록의 마지막 것입니다.

그래서 나는 반대 방향으로 정렬 할 필요가있다. 나는 웹에서 브렌 그 날 앞으로 나가는 것을 찾지 않았다.

            things.sort{-it.dtCreated} //doesnt work
            things.sort{it.dtCreated}.reverse() //has no effect

그리고 나는 그런 표준 작업에 대한 어떤 그루비 한 접근법도 발견하지 못했을 것입니다. 누군가가 내 일들을 어떻게 날짜순으로 정렬 할 수 있는지 힌트를 가지고 있습니까? 거기에 orm [sort: 'dtCreated', order: 'desc'] 또는 위에 사용 된 것과 같은 것이 있어야합니까?

미리 감사드립니다.




Related