在 PowerShell 中创建数组、哈希表和字典
Rohan Timalsina
2023年1月30日
2022年5月16日
-
在 PowerShell 中使用
@()
创建数组 -
使用括号
[]
中的索引号数组 PowerShell 中的单个访问项 -
在 PowerShell 中创建
哈希表
-
在 PowerShell 中创建
有序字典
数组是值或对象的集合。大多数编程语言都将数组作为基本特征。
在 PowerShell 中,数组只是一个数据结构,用作多个项目的集合。
在 PowerShell 中使用 @()
创建数组
这些项目可以是相同的或不同的类型。在 PowerShell 中创建数组的正确方法是使用 @()
。
数组的项目放在@()
括号中。当 ()
中没有放置任何值时,将创建一个空数组。
以下命令创建一个包含 3 个项目的数组 $data
。
$data = @('apple', 'ball', 'cat')
调用数组变量以查看其中的项目。
$data
输出:
apple
ball
cat
你可以使用 GetType
方法来获取变量的数据类型。
$data.GetType()
输出:
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Object[] System.Array
使用括号 []
中的索引号数组 PowerShell 中的单个访问项
你可以使用括号 []
中的索引号访问数组中的各个项目。这些项目以从零开始的升序整数顺序存储在索引号中。
要获取数组中的第一项,你必须使用 [0]
:
$data[0]
输出:
apple
在 PowerShell 中创建哈希表
哈希表是一种紧凑的数据结构,它使用一个键来存储每个值。它也被称为字典
或关联数组
。
它是一个简单的键/值存储。例如,哈希表可能包含学生的姓名和卷号,其中学生的姓名是键,卷号是值,反之亦然。
你可以使用 @{}
在 PowerShell 中创建哈希表。键和值添加在 {}
括号中。
哈希表中的键和值是 .NET 对象
。它们可以有任何对象类型。
下面的命令创建一个包含三个键和值的哈希表 $hash
。
$hash = @{Fruit="Apple"; Color="Red"; Count=5}
哈希表以表格格式显示,其中一列用于键,另一列用于值。
$hash
输出:
Name Value
---- -----
Fruit Apple
Color Red
Count 5
获取 $hash
的数据类型。
$hash.GetType()
输出:
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Hashtable System.Object
哈希表具有 Keys
和 Values
属性。你可以使用 Key
名称作为索引来访问哈希表的项目。
$hash['Color']
输出:
Red
或者,你可以使用点表示法来显示键中的值。
$hash.Count
输出:
5
在 PowerShell 中创建有序字典
你可以使用 [ordered]
属性创建有序字典。将属性放在@
符号之前会有所帮助。
$dict = [ordered]@{Fruit="Apple"; Color="Red"; Count=5}
有序字典的使用方式与哈希表相同。
$dict
输出:
Name Value
---- -----
Fruit Apple
Color Red
Count 5
有序字典中的键总是出现。但是哈希表中没有这样的键顺序。
我们希望本文能帮助你了解如何在 PowerShell 中创建数组、哈希表和有序字典。
Author: Rohan Timalsina