2010-03-05 12 views
8

यह बहुत ज्यादा प्रलेखित किया जाना प्रतीत नहीं होता:क्या माणिक हैश # मर्ज का व्यवहार जब एक ब्लॉक के साथ प्रयोग किया है

hsh.merge(other_hash){|key, oldval, newval| block} → a_hash 

http://ruby-doc.org/core/classes/Hash.html#M002880

+0

दरअसल! मैंने आधिकारिक दस्तावेज़ बदल दिया है। –

+0

इसके लिए धन्यवाद, मार्क-आंद्रे। क्या वह परिवर्तन पहले ही प्रकाशित हुआ है? – inger

उत्तर

10

यह उम्मीद की जा सकती है, जिसके परिणामस्वरूप हैश में शामिल होंगे दोनों कुंजी के लिए एक ब्लॉक द्वारा लौटाया गया मान दोनों हैश में मौजूद है:

>> h1 = {:a => 3, :b => 5, :c => 6} 
=> {:a=>3, :b=>5, :c=>6} 
>> h2 = {:a => 4, :b => 7, :d => 8} 
=> {:a=>4, :b=>7, :d=>8} 
>> h1.merge h2 
=> {:a=>4, :b=>7, :c=>6, :d=>8} 
>> h1.merge(h2){|k,v1,v2| v1} 
=> {:a=>3, :b=>5, :c=>6, :d=>8} 
>> h1.merge(h2){|k,v1,v2| v1+v2} 
=> {:a=>7, :b=>12, :c=>6, :d=>8} 
संबंधित मुद्दे