我从RabbitMQ队列读入的数据具有以下值:epoch, id, wait, length, max
。我想把这些信息放入哈希哈希中。在Perl中,我会这样做:
%hash = ( $spid => { $epoch => { 'wait' => $wait, 'length' => $length, 'max' => $max } } );
This thread似乎很接近,但我要么不理解回复,要么就是我不想要的。在学习如何在Ruby中执行此操作时,将非常感谢任何帮助。
答案 0 :(得分:1)
散列哈希:
mainHash = {}
h1 = { 'test' => 1, 'test2' => 2}
h2 = { 'asdf' => 3 }
mainHash[:h1] = h1
mainHash[:h2] = h2
要访问'asdf'值:
mainHash[:h2]['asdf']
如何将数据放入哈希值取决于数据。
答案 1 :(得分:1)
没有太大区别:
epoch, id, wait, length, max = 1, 2, 3, 4, 5
hash = {id => {epoch => {'wait' => wait, 'length' => length, 'max' => max}}}
p hash # => {2=>{1=>{"wait"=>3, "length"=>4, "max"=>5}}}
puts hash[2][1]["max"] # => 5