2012-05-22 2 views
0

, 나는 내가 상속 한 그루비 코드의 다음 줄을 이해하려고 노력하고 있어요 :Groovy Closure -이 코드에서 어떤 현상이 발생하고 있습니까? 초보자 그루비 개발자로

maxCount = skillsDist.findAll {it.mValue.value >= 0 }.max { it.mValue.value }.mValue.value 
minCount = skillsDist.findAll { it.mValue.value >= 0 }.min { it.mValue.value }.mValue.value 

skillsDist 객체 유형 Set<CalculationResult>의 자바 객체에 대한 참조입니다. 각 CalculationResult에는 int 필드 mValue이 있습니다.

내가 고민하는 부분은 최대 및 최소 이후의 클로저입니다. 분명히, 나는 그것을 밖으로 세트의 최소 및 최대 값을 찾는 것 같아요하지만이 수정해야하고 이것을 이해하지 불편합니다.

감사합니다.

답변

0

findAll 반복자는 set입니다. 새로운 set을 만들고 0보다 크거나 같은 값을 가진 모든 요소를 ​​추가합니다. max 연산은 부분 집합을 반복하고 최대 값을 검색합니다.

두 번째 줄과 동일합니다 (최소값을 찾습니다).

+0

좋아요! 고맙습니다! 지금 내 문제는 최대 작업이 반복되었다는 것을 이해하지 못한다는 것을 알 수 있습니다. – Rick

관련 문제