在 Ruby 数组中查找值

Nurudeen Ibrahim 2022年5月18日
在 Ruby 数组中查找值

在 Ruby 数组中查找值的最佳方法是使用 finddetect 方法;两者都是别名,可以互换使用。它们接受块参数并返回满足块中指定的任何给定条件的第一个值。

下面的示例在 24 的数组中查找奇数。

示例代码:

numbers = [2, 3, 4]
odd_number = numbers.find { |n| n.odd? }
puts odd_number

输出:

3

示例代码:

numbers = [2, 3, 4]
odd_number = numbers.detect { |n| n.odd? }
puts odd_number

输出:

3

在数组中查找值的另一种方法是使用 select 方法。

虽然效率不高,但值得一提。它效率低下,因为它遍历我们正在搜索的整个数组,无论我们要查找的值是在数组的开头还是结尾,这与 finddetect 不同,它们在找到后立即停止迭代价值。

还值得一提的是,select 方法旨在搜索多个值并将它们作为数组返回。假设我们在上面的例子中期望有多个奇数,那么 select 将是一个首选的方法。

示例代码:

numbers = [2, 3, 4, 5]
odd_numbers = numbers.select { |n| n.odd? }
puts odd_numbers

输出:

[3, 5]

相关文章 - Ruby Array