![Добавить хеши с повторяющимися ключами в массив](https://rvso.com/image/1469644/%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C%20%D1%85%D0%B5%D1%88%D0%B8%20%D1%81%20%D0%BF%D0%BE%D0%B2%D1%82%D0%BE%D1%80%D1%8F%D1%8E%D1%89%D0%B8%D0%BC%D0%B8%D1%81%D1%8F%20%D0%BA%D0%BB%D1%8E%D1%87%D0%B0%D0%BC%D0%B8%20%D0%B2%20%D0%BC%D0%B0%D1%81%D1%81%D0%B8%D0%B2.png)
У меня есть куча хешей в powershell с одинаковыми ключами. Хотя создание массива хешей с разными ключами — простая и подробно обсуждаемая в интернете процедура, я не могу найти никакой информации о добавлении хешей в массив с дублирующимися ключами.
При попытке сделать это я получил две ошибки:
Item has already been added. Key in dictionary: 'time' Key being added: 'time'
A hash table can only be added to another hash table.
решение1
Вы не можете добавлять дубликаты ключей в хэш-таблицы, поскольку хэш-таблицы по своей природе могут содержать только уникальные ключи. Если вам нужно хранить дубликаты пар ключ/значение, используйте массивы.
Я использую массив независимых хэш-таблиц, но каким-то образом при добавлении хэш-таблицы в массив ключи должны быть уникальными для всех хэш-таблиц в массиве.
Это странно, потому что это должно работать нормально. Пример:
$ArrayOfHashtables = @{Aplha = 'Bravo'}, @{Charlie = 'Delta'}, @{Echo = 'Foxtrot'}
$ArrayOfHashtables + @{Charlie = 'Delta'}
Результат:
Name Value
---- -----
Aplha Bravo
Charlie Delta
Echo Foxtrot
Charlie Delta