[玩转系统] 如何在 PowerShell 中创建空数组?
作者:精品下载站 日期:2024-12-14 05:03:50 浏览:15 分类:玩电脑
如何在 PowerShell 中创建空数组?
您需要在PowerShell中创建一个空数组吗?在本 PowerShell 教程中,我将解释如何在 PowerShell 中创建空数组以及如何使用 PowerShell 空数组。
要在 PowerShell 中创建空数组,请使用 $myArray=@()
将数组文字分配给变量。此命令将 $myArray
初始化为空数组,允许您随后使用 $myArray += 'newElement'
添加元素。
为什么在 PowerShell 中使用空数组?
PowerShell 中的空数组本质上是一个起点。它是一个准备填充元素的容器。当您知道需要存储项目集合但在创建数组时还没有要存储的项目时,创建空数组非常有用。然后,您可以在元素可用时将其添加到数组中。
在 PowerShell 中创建空数组
在 PowerShell 中创建空数组的最简单方法是使用数组子表达式运算符 @()
。操作方法如下:
$myArray = @()
此命令将 $myArray
初始化为空数组。此时,$myArray
不包含任何元素。
向空数组添加元素
一旦有了空数组,您可能想向其中添加元素。尽管 PowerShell 数组在创建后大小就固定了,但您仍然可以通过创建包含现有数组元素和新元素的新数组来模拟添加元素。这是一个例子:
$myArray += "new element"
此行获取当前的 $myArray
,向其中添加一个新元素,然后将结果分配回 $myArray
。请记住,此过程对于添加许多元素来说并不是最有效的,因为它每次添加都会创建一个新数组。
您可以查看下面的屏幕截图,我使用 VS 代码在 PowerShell 中创建了一个空数组。
查看 PowerShell 追加到数组
创建空数组的替代方法
在 PowerShell 中创建空数组的另一种方法是将变量转换为数组类型。下面是使用数组转换 [array]
的示例:
$myArray = [array]@()
此方法明确表明 $myArray
旨在成为数组数据类型。
在 PowerShell 中创建具有属性的空数组
在 PowerShell 中创建具有属性的空数组涉及定义具有所需属性的对象,然后将这些对象存储在数组中。这通常是使用自定义对象来完成的。这是一个例子:
首先,定义一个具有所需属性的自定义对象。例如:
$customObject = New-Object PSObject -Property @{
Property1 = $null
Property2 = $null
}
在此示例中,Property1
和 Property2
是属性的名称,它们最初设置为 $null
。
接下来,创建一个空数组来存储此类对象:
$myArray = @()
现在,您可以将自定义对象添加到数组中:
$myArray += $customObject
此数组 $myArray
现在包含一项,它是具有 Property1
和 Property2
的自定义对象。您可以使用相同的方法将更多具有相同属性的对象添加到数组中。每个对象都可以根据需要将其属性设置为不同的值。
在 PowerShell 中创建一个空字符串数组
在 PowerShell 中,空字符串数组是在初始化时不包含任何字符串元素的数组。要创建空字符串数组,请使用 @()
语法,它表示一个数组。由于您指定了一个字符串数组,因此可以理解该数组旨在保存字符串元素,但最初它不包含任何字符串元素。
以下是如何在 PowerShell 中创建空字符串数组的示例:
$stringArray = @()
此命令使用空数组初始化 $stringArray
。然后,您可以使用各种方法将字符串添加到此数组,例如使用 +=
运算符来附加元素:
$stringArray += "First string"
$stringArray += "Second string"
经过这些操作,$stringArray
将包含两个元素:“First string”和“Second string”。
PowerShell:创建带有标题的空数组
在 PowerShell 中,“带标头的数组”通常是指具有命名属性的对象集合,而不是传统的数组。要创建此类集合,您可以使用 PSCustomObject
或哈希表,然后将这些对象存储在数组中。
下面是如何创建一个空数组来保存带有标题的对象(命名属性)的示例:
# Define an empty array to hold the custom objects
$objectArray = @()
# Define a new object with named properties (headers)
$object = New-Object PSObject -Property @{
Header1 = $null
Header2 = $null
Header3 = $null
}
# Add the object to the array
$objectArray += $object
在此示例中,$objectArray
是一个数组,用于保存具有三个属性的对象:Header1
、Header2
和 Header3
。最初,该数组包含一个所有属性均设置为 $null
的对象。
在 PowerShell 中创建一个大小为空的数组
在 PowerShell 中,您可以创建具有预定义大小的数组,但需要注意的是,PowerShell 中的数组一旦创建,大小就固定了。要创建具有特定大小的数组,通常使用一定数量的元素来初始化该数组。然而,由于 PowerShell 数组与 C# 等语言中的传统静态大小数组不同,因此方法有点不同。
例如,如果要创建一个可以容纳 10 个元素的数组,可以使用以下代码:
# Create an array with 10 elements, all initialized to $null
$arrayOfSize = New-Object object[] 10
在此示例中,$arrayOfSize
是一个包含 10 个元素的数组,每个元素都初始化为 $null
。然后,您可以通过使用索引访问数组的每个元素来为它们分配值。
以下是为数组的第一个元素(索引 0)赋值的方法:
$arrayOfSize[0] = "First element"
如果您想创建一个使用 $null
以外的默认值初始化的数组,则可以使用循环来填充该数组。例如,要创建一个包含 10 个空字符串的数组:
# Create an array of 10 empty strings
$arrayOfSize = 1..10 | ForEach-Object { "" }
这使用 ForEach-Object
循环将 10 个元素中的每一个元素设置为空字符串 (""
)。
结论
使用 @()
创建空数组为收集和操作脚本中的一组项目提供了一个灵活的起点。请记住,虽然 PowerShell 数组的大小是固定的,但您可以通过创建新数组或筛选现有数组来模拟添加、修改和删除元素。
在本 PowerShell 教程中,我解释了如何使用各种方法在 PowerShell 中创建空数组。
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[影视] 黑道中人 Alto Knights(2025)剧情 犯罪 历史 电影
[古装剧] [七侠五义][全75集][WEB-MP4/76G][国语无字][1080P][焦恩俊经典]
[实用软件] 虚拟手机号 电话 验证码 注册
[电视剧] 安眠书店/你 第五季 You Season 5 (2025) 【全10集】
[电视剧] 棋士(2025) 4K 1080P【全22集】悬疑 犯罪 王宝强 陈明昊
[软件合集] 25年6月5日 精选软件22个
[软件合集] 25年6月4日 精选软件36个
[短剧] 2025年06月04日 精选+付费短剧推荐33部
[短剧] 2025年06月03日 精选+付费短剧推荐25部
[软件合集] 25年6月3日 精选软件44个
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[实用软件] 虚拟手机号 电话 验证码 注册
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[影视] 内地绝版高清录像带 [mpg]
[书籍] 古今奇书禁书三教九流资料大合集 猎奇必备珍藏资源PDF版 1.14G
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag