哈希比方說,我有這兩個數組:對元素融入在Ruby中
a = [1, 2, 3, 4, 5]
b = [6, 7, 8, 9, 10]
我想要得到的是一個Hash如下:
c = { 1 => [1, 6], 2 => [2, 7], 3 => [3, 8], 4 => [4, 9], 5 => [5, 10] }
的唯一途徑到目前爲止我遇到如下:
# Initialize the resulting Hash and fill in the keys.
c = {}
(a.length).times { |i| c[i + 1] = [] }
# Fill values
c.each_with_index do |(key), idx|
c[key] = [a[idx], b[idx]]
end
Ruby是否有更好或更好的方法來做到這一點?
在此先感謝。
'with_index(1,&:reverse)'能工作嗎? – sawa
@sawa:不,但我不知道爲什麼。 – tokland
我明白了。我錯了。我找出原因。當使用'to_proc'並且該塊帶有多個塊參數時,第一個變爲接收者,其餘爲參數。 – sawa