Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 在没有初始化的情况下迭代数组_Ruby_Arrays_Hash - Fatal编程技术网

Ruby 在没有初始化的情况下迭代数组

Ruby 在没有初始化的情况下迭代数组,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

我有一个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]]}

付款类型是散列还是散列数组?我想要这样的数组[['name',id'],['name2',id2']]有什么特别的理由不使用
#map
?是的@Yossi!!!你说得对!!谢谢发布一个答案让我投票支持你@尤西,你能把这个问题也投赞成票吗?
PAYMENT_TYPES_HASH.map {|order| [order[:name], order[:id]]}