- PowerShell 教程
- PowerShell - 首页
- PowerShell - 概述
- PowerShell - 环境设置
- PowerShell - Cmdlet
- PowerShell - 文件和文件夹
- PowerShell - 日期和时间
- PowerShell - 文件 I/O
- PowerShell - 高级 Cmdlet
- PowerShell - 脚本
- PowerShell - 特殊变量
- PowerShell - 运算符
- PowerShell - 循环
- PowerShell - 条件语句
- PowerShell - 数组
- PowerShell - 哈希表
- PowerShell - 正则表达式
- PowerShell - 反引号
- PowerShell - 方括号
- PowerShell - 别名
- PowerShell 有用资源
- PowerShell - 快速指南
- PowerShell - 有用资源
- PowerShell - 讨论
PowerShell - 数组
PowerShell 提供了一种数据结构,即数组,它存储固定大小的任何类型的元素的顺序集合。数组用于存储数据集合,但通常将其视为变量或对象的集合更有用。
与其声明单独的变量,例如 number0、number1、... 和 number99,不如声明一个数组变量,例如 numbers,并使用 numbers[0]、numbers[1] 和 ...、numbers[99] 来表示单个变量。
本教程介绍如何声明数组变量、创建数组以及使用索引变量处理数组。
声明数组变量
要在程序中使用数组,必须声明一个变量来引用该数组,并且可以指定该变量可以引用的数组类型。以下是声明数组变量的语法:
语法
$A = 1, 2, 3, 4 or $A = 1..4
注意 - 默认情况下,数组对象的类型为 System.Object。GetType() 方法返回数组的类型。可以传递类型。
示例
以下代码片段是此语法的示例:
[int32[]]$intA = 1500,2230,3350,4000 $A = 1, 2, 3, 4 $A.getType()
这将产生以下结果:
输出
IsPublic IsSerial Name BaseType -------- -------- ---- -------- True True Object[] System.Array
数组元素通过索引访问。数组索引是基于 0 的;也就是说,它们从 0 开始到arrayRefVar.length-1。
示例
以下语句声明一个数组变量 myList,创建一个包含 10 个双精度类型元素的数组,并将它的引用分配给 myList:
$myList = 5.6, 4.5, 3.3, 13.2, 4.0, 34.33, 34.0, 45.45, 99.993, 11123
下图表示数组 myList。这里,myList 包含十个双精度值,索引从 0 到 9。
处理数组
在处理数组元素时,我们通常使用for循环或foreach循环,因为数组中的所有元素都是同一类型,并且数组的大小是已知的。
示例
这是一个完整的示例,展示了如何创建、初始化和处理数组:
$myList = 5.6, 4.5, 3.3, 13.2, 4.0, 34.33, 34.0, 45.45, 99.993, 11123 write-host("Print all the array elements") $myList write-host("Get the length of array") $myList.Length write-host("Get Second element of array") $myList[1] write-host("Get partial array") $subList = $myList[1..3] write-host("print subList") $subList write-host("using for loop") for ($i = 0; $i -le ($myList.length - 1); $i += 1) { $myList[$i] } write-host("using forEach Loop") foreach ($element in $myList) { $element } write-host("using while Loop") $i = 0 while($i -lt 4) { $myList[$i]; $i++ } write-host("Assign values") $myList[1] = 10 $myList
这将产生以下结果:
输出
Print all the array elements 5.6 4.5 3.3 13.2 4 34.33 34 45.45 99.993 11123 Get the length of array 10 Get Second element of array 4.5 Get partial array print subList 4.5 3.3 13.2 using for loop 5.6 4.5 3.3 13.2 4 34.33 34 45.45 99.993 11123 using forEach Loop 5.6 4.5 3.3 13.2 4 34.33 34 45.45 99.993 11123 using while Loop 5.6 4.5 3.3 13.2 Assign values 5.6 10 3.3 13.2 4 34.33 34 45.45 99.993 11123
数组方法示例
这是一个完整的示例,展示了使用其方法对数组进行操作。
$myList = @(0..4) write-host("Print array") $myList $myList = @(0..4) write-host("Assign values") $myList[1] = 10 $myList
这将产生以下结果:
输出
Clear array Print array 0 1 2 3 4 Assign values 0 10 2 3 4
广告