Powershell - 哈希表
哈希表将键/值对存储在哈希表中。 使用哈希表时,您可以指定用作键的对象以及要链接到该键的值。 一般我们使用字符串或者数字作为键。
本教程介绍如何声明哈希表变量、创建哈希表以及哈希表处理使用方法。
声明哈希表变量
要在程序中使用哈希表,您必须声明一个变量来引用该哈希表。 这是声明哈希表变量的语法 −
语法
$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
哈希表值通过Key(键)访问。
> $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