![将具有重复键的哈希值添加到数组中](https://linux22.com/image/1469644/%E5%B0%86%E5%85%B7%E6%9C%89%E9%87%8D%E5%A4%8D%E9%94%AE%E7%9A%84%E5%93%88%E5%B8%8C%E5%80%BC%E6%B7%BB%E5%8A%A0%E5%88%B0%E6%95%B0%E7%BB%84%E4%B8%AD.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