1에서 5사이의 수에서 홀수만 * 10을 한 값을 반환하는 방법입니다. 즉 10, 30, 50이 답으로 나오게요.
irb(main):001:0> a = 1..5 => 1..5
(1) Select를 사용한 방법
irb(main):006:0> a.select { |i| i % 2 != 0 }.map { |i| i * 10 } => [10, 30, 50]
(2) Inject를 사용한 방법
irb(main):007:0> a.inject([]) { |a, i| i[0] == 1 ? a.push(i * 10) : a } => [10, 30, 50]
Integer i에서 i[0]은 i의 0번째 비트를 반환합니다.
Leave a Reply