开发手册 欢迎您!
软件开发者资料库

Powershell - 数组

PowerShell阵列 - 从简单和简单的步骤学习PowerShell,从基本到高级概念,包括概述,环境设置,Cmdlet,文件和文件夹,日期和计时器,文件I / O,高级Cmdlet,文件和文件夹,日期和计时器,文件I / O,高级Cmdlet,脚本,特殊变量,运算符,循环,条件,数组,Hashtables,正则表达式,反引号,括号,别名。

PowerShell提供了一个数据结构数组,它存储任意类型元素的固定大小顺序集合.数组用于存储数据集合,但将数组视为变量或对象的集合通常更有用.

而不是声明单个变量,例如number0 ,number1,...和number99,声明一个数组变量,如数字,并使用数字[0],数字[1]和...,数字[99]来表示单个变量.

本教程介绍如何使用索引变量声明数组变量,创建数组和处理数组.

声明数组变量

To在程序中使用数组,必须声明一个变量来引用数组,并且可以指定变量可以引用的数组类型.以下是声明数组变量&minus的语法;

语法

$A = 1, 2, 3, 4or$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个double类型元素的数组,并将其引用分配给myList :

$myList = 5.6, 4.5, 3.3, 13.2, 4.0, 34.33, 34.0, 45.45, 99.993, 11123

下图代表数组myList.这里,myList包含十个double值,索引从0到9.

Array myList

处理数组

处理数组元素时,我们经常使用进行循环或 foreach 循环,因为所有数组中的元素具有相同的类型,并且数组的大小是已知的.

示例

这是一个完整的示例,显示如何创建,初始化和处理数组 :

$myList = 5.6, 4.5, 3.3, 13.2, 4.0, 34.33, 34.0, 45.45, 99.993, 11123write-host("Print all the array elements")$myListwrite-host("Get the length of array")$myList.Lengthwrite-host("Get Second element of array")$myList[1]write-host("Get partial array")$subList = $myList[1..3]write-host("print subList")$subListwrite-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 = 0while($i -lt 4) {  $myList[$i];  $i++}write-host("Assign values")$myList[1] = 10$myList

这将产生以下结果 :

输出

Print all the array elements5.64.53.313.2434.333445.4599.99311123Get the length of array10Get Second element of array4.5Get partial arrayprint subList4.53.313.2using for loop5.64.53.313.2434.333445.4599.99311123using forEach Loop5.64.53.313.2434.333445.4599.99311123using while Loop5.64.53.313.2Assign values5.6103.313.2434.333445.4599.99311123

数组方法示例

这是一个完整的例子使用其方法显示对数组的操作

$myList = @(0..4)write-host("Print array")$myList$myList = @(0..4)write-host("Assign values")$myList[1]  = 10$myList

这将产生以下结果 :

输出

Clear arrayPrint array01234Assign values010234
)