我有一个嵌套的哈希表。
如果我写
json.each{|key, value|
puts value;
puts;
puts value[x];
puts;
puts value[x][0];
}
我得到的结果是
Title1
name1
Title2
name2
Title1
name1
Title1
我想要的是能够做一些类似
的事情value[value.size][0] = Title3;
value[value.size][1] = name3;
,以便在值的末尾追加一个新集合我刚刚做了什么抛出未定义的方法'[]='所以我想知道如果有人可以帮助我以这种方式或其他方式附加值这样我就可以增加与同一键相关联的值的数量保持它们与它相关联的顺序。(当我记录json值时很重要)
由于value[value.size]
评估为nil, value[value.size][0] = Title3
评估为nil[0] = Title3
,这就是为什么你得到错误。您需要做的是将包含Title3和name3的数组附加到value,因此:
value[value.size] = [Title3, name3]
或者最好使用push
方法代替value[value.size] =
:
value.push([Title3, name3])