Ruby 在没有初始化的情况下迭代数组
我有一个hashRuby 在没有初始化的情况下迭代数组,ruby,arrays,hash,Ruby,Arrays,Hash,我有一个hash支付类型\u hash。有没有一种方法可以使用each从这个散列创建一个数组,而不用像a=[]那样在它前面声明数组 a = []; PAYMENT_TYPES_HASH.each {|order| a << [order[:name], order[:id]]} a 您应该使用#map方法: PAYMENT_TYPES_HASH.map {|order| [order[:name], order[:id]]} 付款类型是散列还是散列数组?我想要这样的数组[['na
支付类型\u hash
。有没有一种方法可以使用each
从这个散列创建一个数组,而不用像a=[]
那样在它前面声明数组
a = [];
PAYMENT_TYPES_HASH.each {|order| a << [order[:name], order[:id]]}
a
您应该使用#map
方法:
PAYMENT_TYPES_HASH.map {|order| [order[:name], order[:id]]}
付款类型是散列还是散列数组?我想要这样的数组[['name',id'],['name2',id2']]有什么特别的理由不使用
#map
?是的@Yossi!!!你说得对!!谢谢发布一个答案让我投票支持你@尤西,你能把这个问题也投赞成票吗?
PAYMENT_TYPES_HASH.map {|order| [order[:name], order[:id]]}