Adiciona hashes com chaves duplicadas para array

1

Eu tenho um monte de hashes no powershell com chaves idênticas. Embora a criação de uma matriz de hashes com chaves diferentes seja simples e amplamente discutida na Internet, não consigo encontrar informações sobre como adicionar hashes a uma matriz com chaves duplicadas.

Dois erros que recebi ao tentar fazer isso:

Item has already been added. Key in dictionary: 'time' Key being added: 'time'

A hash table can only be added to another hash table.

    
por twinlakes 13.10.2015 / 23:00

1 resposta

4

Você não pode adicionar chaves duplicadas a hashtables, porque as hashtables por design só podem conter chaves exclusivas. Se você precisar armazenar pares de chave / valor duplicados, use matrizes.

I'm using an array of independent hash tables, but somehow when you add the hashtable to the array, the keys need to be unique across all the hashtables in the array

Isso é estranho, porque deve funcionar bem. Exemplo:

$ArrayOfHashtables = @{Aplha = 'Bravo'}, @{Charlie = 'Delta'}, @{Echo = 'Foxtrot'}
$ArrayOfHashtables +  @{Charlie = 'Delta'}

Resultado:

Name                           Value
----                           -----
Aplha                          Bravo
Charlie                        Delta
Echo                           Foxtrot
Charlie                        Delta
    
por 15.10.2015 / 21:33