收集和每个之间有明显区别吗?
使用数组collect 和each 之间的主要区别是什么?偏爱?
some = []
some.collect do {|x| puts x}
some.each do |x|
puts x
end
Using arrays what's the main difference between collect and each? Preference?
some = []
some.collect do {|x| puts x}
some.each do |x|
puts x
end
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
array = []
是定义数组对象的快捷方式(长格式:array = Array.new
)Array#collect
(以及Array#map
) 根据块中传递的代码返回一个新数组。Array#each
对数组的每个元素执行操作(由块定义)。我会像这样使用收集:
并且每个都像这样:
希望这有帮助......
array = []
is a shortcut to define an array object (long form:array = Array.new
)Array#collect
(andArray#map
) return a new array based on the code passed in the block.Array#each
performs an operation (defined by the block) on each element of the array.I would use collect like this:
And each like this:
Hope this helps...
collect
(或map
)会将do块的返回值“保存”在一个新数组中并返回它,例如:each
只会为每个项目执行 do 块,并且不会保存返回值。collect
(ormap
) will "save" the return values of the do block in a new array and return it, example:each
will only execute the do block for each item and wont save the return value.