Tag: 哈希

如果hash 不存在,如何分配hash =’c’?

有什么比这简单的方法 if hash.key?(‘a’) hash[‘a’][‘b’] = ‘c’ else hash[‘a’] = {} hash[‘a’][‘b’] = ‘c’ end

迭代Ruby中深度嵌套的哈希级别

所以我有一个哈希,对于每个哈希级别,我想存储它的键和值。 问题是,值可以是另一个哈希数组。 此外,该哈希可以包含键值对,其中值又是另一个哈希数组等等。另外,我不知道每个哈希的嵌套程度有多深。 举个例子: { :key1 => ‘value1’, :key2 => ‘value2’, :key3 => { :key4 => ‘value4’, :key5 => ‘value5’ }, :key6 => { :key7 => ‘value7’, :key8 => { :key9 => ‘value9’ } } } ..等等。 我想要做的是保存每个键,值对和其父级的ID。 我认为这可能是递归完成的,我只是不确定如何因为我不熟悉递归函数。 我知道如何正常迭代数据: myHash.each {|key, value| …Do something with the key and value … } 所以我猜测递归调用将是这样的: def save_pair […]