📅  最后修改于: 2020-11-19 08:00:53             🧑  作者: Mango
哈希表将键/值对存储在哈希表中。使用哈希表时,可以指定用作键的对象,以及要链接到该键的值。通常,我们使用字符串或数字作为键。
本教程介绍如何使用其方法声明哈希表变量,创建哈希表以及处理哈希表。
要在程序中使用哈希表,必须声明一个变量以引用哈希表。这是声明哈希表变量的语法-
$hash = @{ ID = 1; Shape = "Square"; Color = "Blue"}
or
$hash = @{}
注–可以使用类似的语法创建有序字典。有序词典保持条目添加的顺序,而哈希表则没有。
以下代码片段是此语法的示例-
$hash = [ordered]@{ ID = 1; Shape = "Square"; Color = "Blue"}
打印哈希表。
$hash
Name Value
---- -----
ID 1
Color Blue
Shape Square
哈希表值可通过键访问。
> $hash["ID"]
1
点表示法可用于访问哈希表键或值。
> $hash.keys
ID
Color
Shape
> $hash.values
1
Blue
Square
这是一个完整的示例,显示了如何创建,初始化和处理哈希表-
$hash = @{ ID = 1; Shape = "Square"; Color = "Blue"}
write-host("Print all hashtable keys")
$hash.keys
write-host("Print all hashtable values")
$hash.values
write-host("Get ID")
$hash["ID"]
write-host("Get Shape")
$hash.Number
write-host("print Size")
$hash.Count
write-host("Add key-value")
$hash["Updated"] = "Now"
write-host("Add key-value")
$hash.Add("Created","Now")
write-host("print Size")
$hash.Count
write-host("Remove key-value")
$hash.Remove("Updated")
write-host("print Size")
$hash.Count
write-host("sort by key")
$hash.GetEnumerator() | Sort-Object -Property key
这将产生以下结果-
Print all hashtable keys
ID
Color
Shape
Print all hashtable values
1
Blue
Square
Get ID
1
Get Shape
print Size
3
Add key-value
Add key-value
print Size
5
Remove key-value
print Size
4
sort by key
Name Value
---- -----
Color Blue
Created Now
ID 1
Shape
Square