在Ruby中,有幾種循環結構可以提高代碼復用性,例如each
、map
、select
、reduce
等。這些循環結構都是基于迭代器的,可以在不同的集合上使用,從而提高代碼的復用性。下面是一些示例:
each
循環遍歷集合:def process_items(items)
items.each do |item|
# 對每個item進行處理
puts item * 2
end
end
items = [1, 2, 3, 4, 5]
process_items(items)
map
循環創建一個新集合:def square_items(items)
items.map { |item| item * item }
end
items = [1, 2, 3, 4, 5]
squared_items = square_items(items)
puts squared_items.inspect
select
循環篩選滿足條件的元素:def even_items(items)
items.select { |item| item.even? }
end
items = [1, 2, 3, 4, 5]
even_items = even_items(items)
puts even_items.inspect
reduce
循環計算集合的總和:def sum_items(items)
items.reduce(0) { |total, item| total + item }
end
items = [1, 2, 3, 4, 5]
sum = sum_items(items)
puts sum
通過使用這些循環結構,你可以將相同的邏輯應用于不同的集合,從而提高代碼的復用性。同時,你還可以將這些循環結構封裝成方法,以便在其他地方重用。