each: 顺序返回各个元素

collect: 把原数组的各个元素顺序返回,并组装新的数组

map: 与 collect一样,会创建一个新的数组

select: 与collect一样,会创建一个新的数组




1
2
3
4
5
6
list = ( 1 .. 10 ).to_a
  
p list
p list.collect { |i| i >=  3  && i <=  7  }
p list.map { |i| i >=  3  && i <=  7  }
p list.select { |i| i >=  3  && i <=  7  }

结果

结果

所有的方法都有相似之处就是都用了一个block 参数,map和collect方法都返回了一个数组中的item通过计算返回的值,而select方法则返回了通过迭代数组中的item计算出的结果为true的值。