簡體   English   中英

按此順序組合2個哈希的最佳方法

[英]Best way to combine 2 hashes in this order

我有2個哈希表list1和list2。 密鑰是用戶ID。 這是一個例子

list1 = { '1' => [item1, item2],
          '2' => [item3]
        }

list2 = { '1' => [item 4],
          '3' => [item 5]
        }

我需要將2合並為一個列表..類似這樣的..或任何更好的表示形式表示贊賞。 基本上,需要將每個用戶的list1和list2項組合成一個數組,其中第一個項給我list1項,第二個給我list2項。

{ '1' => [[item 1, item 2], [item 4],
  '2' => [[item 3],[]],
  '3' => [[],[item 5]]
}

我能夠以老式的方式執行此操作,但是想知道是否有最佳的方法來執行此操作。想知道是否可以最小化代碼和處理。

那輸出呢?

{ 
  '1' => [item 1, item 2, item 4],
  '2' => [item 3],
  '3' => [item 5]
}

你可以用它

ret = list1.merge(list2){ |key, old, new| old + new }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM