Programming/etc

[groovy] each 와 collect

Makuri 2021. 9. 27. 00:25
728x90

젠킨스때문에 groovy 보다가 헷갈릴거 같아서 간단하게 메모한다.

        println([1,2,3].each{it += 1})    //[1, 2, 3]
        println([1,2,3].collect{it += 1})  //[2, 3, 4]

each는 컨테이너의 각 원소를 copy value로 it에 반환하면서 순환할 뿐 실제 값을 바꾸지 않는다. 반환도 원래 리스트가 반환된다.

collect는 컨테이너의 각 원소를 copy reference로 it에 반환하면서 순환해서, it에 대입하면 실제 원소 값이 바뀌었다.

 

728x90