過濾陣列

通常我們只想對滿足特定條件的陣列元素進行操作:

選擇

將返回與特定條件匹配的元素

array = [1, 2, 3, 4, 5, 6]
array.select { |number| number > 3 } # => [4, 5, 6]

拒絕

將返回與特定條件不匹配的元素

array = [1, 2, 3, 4, 5, 6]
array.reject { |number| number > 3 } # => [1, 2, 3]

#select#reject 都返回一個陣列,因此它們可以被連結:

array = [1, 2, 3, 4, 5, 6]
array.select { |number| number > 3 }.reject { |number| number < 5 }
  # => [5, 6]