我是编程新手。有人可以解释一下.map会做什么:
.map
params = (0...param_count).map
该map方法接受一个可枚举对象和一个块,并为每个元素运行块,从块中输出每个返回值(原始对象不变,除非您使用map!):
map
map!)
[1, 2, 3].map { |n| n * n } #=> [1, 4, 9]
Array并且Range是可枚举的类型。map带有一个块返回一个数组。 map!改变原始数组。
Array
Range
map!
map!这在哪里有帮助,和有什么区别each?这是一个例子:
each
names = ['danil', 'edmund'] # here we map one array to another, convert each element by some rule names.map! {|name| name.capitalize } # now names contains ['Danil', 'Edmund'] names.each { |name| puts name + ' is a programmer' } # here we just do something with each element
输出:
Danil is a programmer Edmund is a programmer