对于level1的多级哈希,我编写了这段代码,
{"1"=>{2=>0}}.map{|k,v| v.class!=Hash ? "#{k}=#{v}" : "#{k}=#{v.keys[0]}@#{v.values[0]}"}.join('&')
但是这不能用于多个级别的哈希。是否有任何方法可以编写通用代码或任何可用于将n级的多级哈希转换为字符串格式的方法。
答案 0 :(得分:3)
内置inspect
已经做到了(大多数对象都有该方法)
{"1"=>{2=>0}}.inspect
# => "{\"1\"=>{2=>0}}"