해시 배열을 생성하는 배열에 여러 해시를 삽입하고 싶습니다. 그러나 배열에 새 해시를 추가 할 때마다 이전 해시를 덮어 씁니다. 무슨 일이 일어나고 있는지 아십니까?ruby - 여러 개의 해시를 루비의 배열에 삽입
partArray = []
partHash = {}
partHash["name"] = "Item1"
partHash["owner"] = "Item1"
#Insert first hash into array
partArray << partHash
puts partArray
#new set of key, value pairs
#to be appended to array
partHash["name"] = "Item2"
partHash["owner"] = "Item2"
#Append second hash into array
partArray << partHash
puts partArray
출력 : 첫 번째 해시 값을 덮어 이유를 잘 모르겠어요
{"name"=>"Item1", "owner"=>"Item1"}
new Array is :
{"name"=>"Item2", "owner"=>"Item2"}
{"name"=>"Item2", "owner"=>"Item2"}
. 어떤 도움을 주셔서 감사합니다.
아마도이 되거 것입니다 (: OBJECT_ID)' –
다른 값으로, 동일한 해시 OBJECT_ID를 받고. { "name"=> "Item1", "owner"=> "Item1"} [70094101888900] 새 배열은 { "name"=> "Item2", "owner"=> "Item2"} { "name"=> "Item2", "owner"=> "Item2"} [70094101888900, 70094101888900] – danynl