📅  最后修改于: 2023-12-03 15:19:52.801000             🧑  作者: Mango
Ruby是一种面向对象的动态语言,提供了许多迭代器来帮助程序员在遍历、修改和处理数据时更加高效和灵活。
迭代器是一种设计模式,用于提供一种简洁而通用的方法来遍历集合中的元素。在Ruby中,迭代器是一组方法,允许您在循环中访问集合中的每个元素,而无需手动管理迭代过程。
each
方法是Ruby中最常用的迭代器之一。它允许您遍历数组、哈希表和其他Ruby集合中的元素。
numbers = [1,2,3,4,5]
numbers.each do |number|
puts number
end
输出:
1
2
3
4
5
map
方法是一种迭代器,它允许您遍历集合中的每个元素,并将每个元素映射到一个新的值。
numbers = [1,2,3,4,5]
squares = numbers.map do |number|
number * number
end
puts squares # 输出 [1, 4, 9, 16, 25]
select
方法是一种迭代器,它允许您遍历集合中的每个元素,并根据一个条件返回集合中的一部分。
numbers = [1,2,3,4,5]
evens = numbers.select do |number|
number % 2 == 0
end
puts evens # 输出 [2, 4]
reduce
方法是一种迭代器,它允许您遍历集合中的每个元素,并将它们组合成一个值,例如求和或求积。
numbers = [1,2,3,4,5]
sum = numbers.reduce(0) do |accumulator, number|
accumulator + number
end
puts sum # 输出 15
Ruby的迭代器提供了一种简单而强大的方式来处理集合中的元素。每个迭代器都有自己的用途和特点,您的选择应该取决于您要解决的问题。掌握这些基本的迭代器可以为您在日常编码中带来很多便利。