在 Ruby 中过滤数组

Nurudeen Ibrahim 2023年1月30日
  1. 使用 Ruby 中的 select 方法过滤数组
  2. 使用 Ruby 中的 reject 方法过滤数组
  3. 使用 Ruby 中的 inject 方法过滤数组
在 Ruby 中过滤数组

以下主题是用于在 Ruby 中过滤数组的方法。

使用 Ruby 中的 select 方法过滤数组

这是 Ruby 中非常常见的过滤方法。从数组中选择一些元素时它很有用。

letters = ['A', 'k', 'L', 'B', 'n', 'O', 'P', 'c', 'r']
small_letters = letters.select { |l| l == l.downcase }
puts small_letters

输出:

k
n
c
r

使用 Ruby 中的 reject 方法过滤数组

这与 select 相反。当从数组中获取许多元素时,首选 reject 方法。

letters = ['A', 'k', 'L', 'B', 'n', 'O', 'P', 'C', 'r']
small_letters = letters.reject { |l| l != l.downcase }
puts small_letters

输出:

k
n
r

使用 Ruby 中的 inject 方法过滤数组

inject 方法通常用于累加数组的所有元素,但可以通过将初始累加器设置为空数组来进行过滤。

letters = ['A', 'k', 'L', 'B', 'n', 'O', 'P', 'c', 'r']
small_letters = letters.inject([]) do |result, l|
  result << l if l == l.downcase
  result
end
puts small_letters

输出:

k
n
q
r

相关文章 - Ruby Array