从数组中打印出多个哈希值

Printing out multiple hash values from an array

您好,我正在尝试在一个函数中推出多个哈希值。我只能得到 return 的第一个哈希值。我想将所有哈希值都设为 return,以便在提取数据后可以对它们进行格式化,但到目前为止,我只能获得第一个哈希值。在此先感谢您的帮助,这就是我目前所处的位置。

def list(names)
names.each do|name|
 name.each do |key,value|
   return "#{value}"
 end
end
end
def list(names)
    values = []
    names.each do|name|
        name.each do |key,value|
            values << value
        end
    end
    values
end

您需要保留所有值,而不是立即return第一个值。


Ruby本身有很多方法,你可以用一行的方式来做这种情况。

def list(names)
    names.map(&:values).flatten
end