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 }

结果

ruby each collect map select 区别_ruby each collect ma

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