[Dictionary] Groovy에서 맵을 통해 반복 하시겠습니까?



Answers

또는 Groovy 문서에 표시된 for 루프를 사용할 수 있습니다.

def map = ['a':1, 'b':2, 'c':3]
for ( e in map ) {
    print "key = ${e.key}, value = ${e.value}"
}

/*
Result:
key = a, value = 1
key = b, value = 2
key = c, value = 3
*/

each 클로저와 반대되는 for 루프를 사용하면 얻을 수있는 장점 중 하나는 더 쉽게 디버깅을 할 수 있다는 것입니다. Netbeans를 사용할 때 each 클로저 내부에서 중단 점에 도달 할 수 없기 때문입니다.

Question

Groovy에서 수행하려고하는 매우 간단한 작업이 있지만 작동시키지 못하는 것 같습니다. 나는 그루비에서지도 객체를 반복하고 키와 값을 출력하려하지만이 코드는 작동하지 않습니다.

// A simple map
def map = [
        iPhone : 'iWebOS',
        Android: '2.3.3',
        Nokia  : 'Symbian',
        Windows: 'WM8'
]

// Print the values
for (s in map) {
    println s + ": " + map[s]
}

출력을 다음과 같이 표시하려고합니다.

iPhone: iWebOS
Android: 2.3.3
Nokia: Symbian
Windows: WM8

누군가 이걸 어떻게하는지 자세히 설명해 주시겠습니까 ??




다른 옵션 :

def map = ['a':1, 'b':2, 'c':3]
map.each{
  println it.key +" "+ it.value
}



Links