Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
h = {1=>[1,2,3], 2=>[4,5,6]} new_arr = [] h.each_value {|arr| new_arr.concat(arr) }
这行得通,但有什么更类似于红宝石的方法呢?
所有值都是数组,但不应修改每个数组的元素。
这个怎么样?
h.values.flatten
您可以使用减少:
h.values.reduce(&:+)
有点神秘
h.flat_map(&:last)
有点冗长
h.flat_map{|_, value| value}
如果要获取哈希值数组,请使用 Hash#values。
new_arr = h.values