PowerShell
HashTables
Suche…
Einführung
Bemerkungen
Ein wichtiges Konzept, das auf Hash-Tabellen beruht, ist das Splatting . Es ist sehr nützlich, um eine große Anzahl von Anrufen mit sich wiederholenden Parametern durchzuführen.
Hash-Tabelle erstellen
Beispiel zum Erstellen einer leeren HashTable:
$hashTable = @{}
Beispiel zum Erstellen einer HashTable mit Daten:
$hashTable = @{
Name1 = 'Value'
Name2 = 'Value'
Name3 = 'Value3'
}
Greifen Sie mit einem Schlüssel auf einen Hashtabellenwert zu.
Ein Beispiel für das Definieren einer Hash-Tabelle und den Zugriff auf einen Wert mit dem Schlüssel
$hashTable = @{
Key1 = 'Value1'
Key2 = 'Value2'
}
$hashTable.Key1
#output
Value1
Ein Beispiel für den Zugriff auf einen Schlüssel mit ungültigen Zeichen für einen Eigenschaftennamen:
$hashTable = @{
'Key 1' = 'Value3'
Key2 = 'Value4'
}
$hashTable.'Key 1'
#Output
Value3
Durchlaufen einer Hashtabelle
$hashTable = @{
Key1 = 'Value1'
Key2 = 'Value2'
}
foreach($key in $hashTable.Keys)
{
$value = $hashTable.$key
Write-Output "$key : $value"
}
#Output
Key1 : Value1
Key2 : Value2
Fügen Sie einer vorhandenen Hashtabelle ein Schlüsselwertpaar hinzu
Ein Beispiel zum Hinzufügen eines Schlüssels "Key2" mit dem Wert "Value2" zur Hashtabelle mithilfe des Additionsoperators:
$hashTable = @{
Key1 = 'Value1'
}
$hashTable += @{Key2 = 'Value2'}
$hashTable
#Output
Name Value
---- -----
Key1 Value1
Key2 Value2
Ein Beispiel zum Hinzufügen eines Schlüssels "Key2" mit dem Wert "Value2" zur Hashtabelle mithilfe der Add-Methode:
$hashTable = @{
Key1 = 'Value1'
}
$hashTable.Add("Key2", "Value2")
$hashTable
#Output
Name Value
---- -----
Key1 Value1
Key2 Value2
Aufzählung durch Schlüssel und Schlüsselwertpaare
Aufzählung über Schlüssel
foreach ($key in $var1.Keys) {
$value = $var1[$key]
# or
$value = $var1.$key
}
Aufzählung durch Schlüsselwertpaare
foreach ($keyvaluepair in $var1.GetEnumerator()) {
$key1 = $_.Key1
$val1 = $_.Val1
}
Entfernen Sie ein Schlüsselwertpaar aus einer vorhandenen Hashtabelle
Ein Beispiel zum Entfernen eines Schlüssels "Key2" mit dem Wert "Value2" aus der Hashtabelle mit dem Operator remove:
$hashTable = @{
Key1 = 'Value1'
Key2 = 'Value2'
}
$hashTable.Remove("Key2", "Value2")
$hashTable
#Output
Name Value
---- -----
Key1 Value1