gpt4 book ai didi

ruby - Hash 是否覆盖 Enumerable#map()?

转载 作者:数据小太阳 更新时间:2023-10-29 07:40:21 25 4
gpt4 key购买 nike

鉴于 map() 是由 Enumerable 定义的,Hash#map 如何yield 两个变量到它的 block ? Hash 是否覆盖 Enumerable#map()

为了好玩,这里有一个小例子:

ruby-1.9.2-p180 :001 > {"herp" => "derp"}.map{|k,v| k+v}
=> ["herpderp"]

最佳答案

它不会覆盖 map

Hash.new.method(:map).owner # => Enumerable

它产生两个变量,收集到一个数组中

class Nums
include Enumerable

def each
yield 1
yield 1, 2
yield 3, 4, 5
end
end

Nums.new.to_a # => [1, [1, 2], [3, 4, 5]]

关于ruby - Hash 是否覆盖 Enumerable#map()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8550232/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com