在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
通过使用这些循环结构,你可以将相同的逻辑应用于不同的集合,从而提高代码的复用性。同时,你还可以将这些循环结构封装成方法,以便在其他地方重用。