Hashes mit doppelten Schlüsseln zum Array hinzufügen

Hashes mit doppelten Schlüsseln zum Array hinzufügen

Ich habe in Powershell eine Reihe von Hashes mit identischen Schlüsseln. Obwohl das Erstellen eines Arrays von Hashes mit unterschiedlichen Schlüsseln unkompliziert ist und im Internet ausführlich erläutert wird, kann ich keine Informationen zum Hinzufügen von Hashes zu einem Array mit doppelten Schlüsseln finden.

Bei diesem Versuch sind mir zwei Fehlermeldungen aufgetreten:

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

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

Antwort1

Sie können Hashtabellen keine doppelten Schlüssel hinzufügen, da Hashtabellen konstruktionsbedingt nur eindeutige Schlüssel enthalten können. Wenn Sie doppelte Schlüssel/Wert-Paare speichern müssen, verwenden Sie Arrays.

Ich verwende ein Array unabhängiger Hash-Tabellen, aber wenn Sie die Hash-Tabelle zum Array hinzufügen, müssen die Schlüssel für alle Hash-Tabellen im Array eindeutig sein.

Das ist seltsam, denn es sollte einwandfrei funktionieren. Beispiel:

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

Ergebnis:

Name                           Value
----                           -----
Aplha                          Bravo
Charlie                        Delta
Echo                           Foxtrot
Charlie                        Delta

verwandte Informationen