我有一个数组和一个返回给定值的函数。最终我想创建一个哈希映射,将数组的值作为键值,将 f(key_value) 的结果作为值。是否有一种干净、简单的方法,例如类似于数组的each/map,使用块来执行此操作?
所以相当于
hsh = {}
[1,2,3,4].each do |x|
hsh[x] = f(x)
end
但看起来与此更相似,因为它很简单,只有一行?
results = array.map { | x | f(x) }
请注意,从 Ruby 2.1.0 开始,您还可以使用数组#to_h http://ruby-doc.org/core-2.1.0/Array.html#method-i-to_h, 像这样:
[1,2,3,4].map{ |x| [x, f(x)] }.to_h
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)