1. each 迭代器
each 是最常用的迭代器,用于遍历集合中的每个元素。
numbers = [1, 2, 3, 4, 5]
numbers.each do |num|
puts num
end
# 输出:1 2 3 4 5
2. times 迭代器
times 迭代器用于指定次数的迭代。
3.times do
puts "Hello, World!"
end
# 输出:
# Hello, World!
# Hello, World!
# Hello, World!
3. map 迭代器
map 迭代器用于创建一个新数组,其中的每个元素都是原始数组元素经过某种操作后的结果。
numbers = [1, 2, 3, 4, 5]
squared_numbers = numbers.map do |num|
num ** 2
end
puts squared_numbers
# 输出:[1, 4, 9, 16, 25]
4. select 迭代器
select 迭代器用于根据条件选择集合中的元素。
numbers = [1, 2, 3, 4, 5]
even_numbers = numbers.select do |num|
num.even?
end
puts even_numbers
# 输出:[2, 4]
5. each_with_index 迭代器
each_with_index 迭代器用于同时访问元素和它们的索引。
fruits = ["apple", "banana", "orange"]
fruits.each_with_index do |fruit, index|
puts "#{index + 1}. #{fruit}"
end
# 输出:
# 1. apple
# 2. banana
# 3. orange
6. each_key 和 each_value 迭代器(用于哈希)
person = { name: "John", age: 30, gender: "male" }
person.each_key do |key|
puts key
end
# 输出:name age gender
person.each_value do |value|
puts value
end
# 输出:John 30 male
这些是一些常见的 Ruby 迭代器,它们使得处理集合中的元素变得更加方便和灵活。你可以根据实际需要选择适合的迭代器来完成不同的任务。如有其他问题,请随时提问。
转载请注明出处:http://www.zyzy.cn/article/detail/13436/Ruby