[Ruby] select, map, collect
select콜렉션에서 주어진 조건과 일치하는 모든 항목의 콜렉션을 반환한다. puts [1,2,3,4,5,6].select {|x| x >= 3 } # 3 4 5 6 collect콜렉션의 모든 원소들을 가공해서 새로운 콜렉션을 반환한다. puts [1,2,3].map {|x| x * x } # 1 4 9 mapmap은 collect의 alias이며, 다른 언어에서 사용하는 메소드와 네이밍을 맞춰서 편리성을 제공하기 위해 만들어진 메소드이다.
더보기
[Ruby] deep_merge
https://github.com/danielsdeleo/deep_merge a = { :a => [1, 2, 3] } b = { :a => [4, 5, 6] } a.merge! b p a 기본적으로 Hash에 merge를 이용하면 없는 키는 추가되지만 이미 존재하는 키는 덮어쓰게된다.따라서 위의 코드를 실행하면 아래와 같은 결과가 나오게 되는데, { :a => [4, 5, 6] } 경우에 따라서는 [4, 5, 6]이 아니라 [1, 2, 3, 4, 5, 6]이 필요할때가 있다. (훨씬 많을듯)이럴 때 사용할 수 있는 것이 deep_merge이다. deep_merge를 사용할 경우 두 해시가 자연스럽게 합쳐진다.deep_merge는 아래의 명렁어로 설치할 수 있다. gem install deep_merge..
더보기