2016-09-16 4 views
1

List를 값으로 포함하는지도를 원합니다. 이 작동하지만,null 인 경우 목록에 요소를 추가하거나 작성하십시오.

def someObject = 'foo' 
def someMap = [:] 
if (someMap['key'] == null) { 
    someMap['key'] = [someObject] 
} else { 
    someMap['key'].add(someObject) 
} 

나는지도 내 목록이 이미 생성되었는지의 여부를 구별 할 필요가 있기 때문에, 가지 짜증나 : 실제로 동작하는 샘플이 있습니다. Groovy는 이것을 더 "아름답게"만드는 방법이 있습니까?

+1

는 자바 아니라,이 JS입니다. – Denis

+0

질문에 태그를 달지 마십시오. – GhostCat

+1

이것은 JS가 아닙니다. Groovy입니다. Java를 기반으로합니다. – Selbi

답변

2

당신은 할 수 있습니다 :

def someMap = [:].withDefault { [] } 

그런 다음

someMap['key'] << someObject 
관련 문제