我有一个使用数组作为其键的哈希.当我更改数组时,哈希值不能再获得相应的键值:
1.9.3p194 :016 > a = [1,2] => [1,2] 1.9.3p194 :017 > b = { a => 1 } => {[1,2]=>1} 1.9.3p194 :018 > b[a] => 1 1.9.3p194 :019 > a.delete_at(1) => 2 1.9.3p194 :020 > a => [1] 1.9.3p194 :021 > b => {[1]=>1} 1.9.3p194 :022 > b[a] => nil 1.9.3p194 :023 > b.keys.include? a => true
我究竟做错了什么?
更新:
好.使用a.clone绝对是解决这个问题的一种方法.
如果我想要更改“a”,但仍然使用“a”来检索相应的值(因为“a”仍然是其中的一个)?