Nice programing

맵, 각각, 수집의 차이점은 무엇입니까?

nicepro 2020. 12. 3. 19:44
반응형

맵, 각각, 수집의 차이점은 무엇입니까?


이 질문에 이미 답변이 있습니다.

루비에서의 기능의 차이가있다 each, map그리고는 collect?


each다른 map하고 collect있지만, mapcollect동일하다 (기술적으로 map의 별칭입니다 collect,하지만 내 경험에 map더 자주 많이 사용된다).

each( Enumerable) 수신기 의 각 요소에 대해 포함 된 블록을 수행합니다 .

[1,2,3,4].each {|n| puts n*2}
# Outputs:
# 2
# 4
# 6
# 8

map그리고 collect새로 생성 Array수신기의 각 소자에인가되는 블록의 결과를 포함 :

[1,2,3,4].map {|n| n*2}
# => [2,4,6,8]

s에도 map!/ collect!정의되어 있습니다 Array. 수신기를 제자리에서 수정합니다.

a = [1,2,3,4]
a.map {|n| n*2} # => [2,4,6,8]
puts a.inspect  # prints: "[1,2,3,4]"
a.map! {|n| n+1}
puts a.inspect  # prints: "[2,3,4,5]"

Each블록을 평가하지만 Each블록 평가 결과를 버리고 원래 배열을 반환합니다.

irb(main):> [1,2,3].each {|x| x*2}
=> [1, 2, 3]

Map/ collect배열의 각 항목에 대해 블록을 호출 한 결과로 구성된 배열을 반환합니다.

irb(main):> [1,2,3].collect {|x| x*2}
=> [2, 4, 6]

참고 URL : https://stackoverflow.com/questions/9429034/what-is-the-difference-between-map-each-and-collect

반응형