在 PowerShell 中创建数组、哈希表和字典

Rohan Timalsina 2023年1月30日
  1. 在 PowerShell 中使用 @() 创建数组
  2. 使用括号 [] 中的索引号数组 PowerShell 中的单个访问项
  3. 在 PowerShell 中创建哈希表
  4. 在 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

哈希表具有 KeysValues 属性。你可以使用 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 中创建数组、哈希表和有序字典。

作者: Rohan Timalsina
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website

相关文章 - PowerShell Array