2011-09-18 76 views
1

我有一個嵌套的散列表。Ruby,將值附加到散列表中的鍵值對的現有值

如果我寫

json.each{|key, value| 
    puts value; 
    puts; 
    puts value[x]; 
    puts; 
    puts value[x][0]; 
} 

我得到的結果沿着

行標題1
名1
標題2
名2

標題1
名1

標題1

我想什麼是能夠做到沿

value[value.size][0] = Title3; 
value[value.size][1] = name3; 

使這一追加到值的最後一組新然而 什麼,我只是做了拋出未定義的方法'線的東西[] ='所以我想知道 如果任何人都可以幫助我以這種方式或其他方式追加值 ,這樣我可以增加與同一個鍵關聯的值的數量,而 維護它們與其相關聯的順序它。 (重要,當我登錄的JSON值)

回答

0

由於value[value.size]評估爲零,value[value.size][0] = Title3計算結果爲nil[0] = Title3,這就是爲什麼你會得到你做的錯誤。你想要做的,而不是什麼是追加含有TITLE3數組和NAME3價值,所以:

value[value.size] = [Title3, name3] 

或者更好的使用方法push而不是value[value.size] =

value.push([Title3, name3]) 
+0

感謝你真棒,正是我正在尋找:) – Jay