Почему дубликат ключа для хэша на языке ruby ​​не возвращает ошибку? - PullRequest
2 голосов
/ 31 марта 2019

A.Дубликат ключа со строкой в ​​качестве ключа

irb(main):001:0> myHash = {'a' => 'a', 'a' => 'a'}
(irb):1: warning: key "a" is duplicated and overwritten on line 1

B.Дубликат ключа с массивом в качестве ключа

irb(main):001:0> myHash = {[1,2,3] => [1,2,3], [1,2,3] => [4,5,6]}
=> {[1, 2, 3]=>[4, 5, 6]}

1 Ответ

0 голосов
/ 01 апреля 2019

Для дублирующейся строки в качестве ключа ошибка не выдается, скорее это предупреждение.

В обоих случаях дубликат ключа перезаписывается в один, поскольку здесь возвращаются следующие значения: {"a" => "a"} и {[1, 2, 3] => [4, 5, 6]} .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...