在上文中我们介绍了如何使用【静态数组】,内容涉及到数组的创建、元素的添加删除等操作,很显然,通过该种方式去操作一个数组是非常麻烦的,静态数组的目的在于让大家了解数组的基本概念和操作,在实际使用数组的脚本中,我们会创建动态数组来更好的提高脚本运算速度和易编写性。


动态数组、使用.Net的类来进行定义,它除了像静态数组一样可以进行比较,索引查找外还可以很方便的进行元素变更,在循环添加元素时它也是自由的去添加单个元素而不是重新定义整个数组,因而极大的提高了脚本的运算速度。


一、 动态数组的定义,动态数组定义时不会指定任意数组大小,初始定义的动态数组不包含任何对象,因而你无法对它做任何操作;


wKioL1W2V46AQ6OtAAA8fHh2_yk828.jpg


二、 动态数组元素的添加和移除,动态数组由于并未直接指定数组的大小,可以直接在原数组的基础上进行操作;

  • 元素的添加可以使用Add方法;

wKiom1W2VaLDa9TQAACiukc3Ugk156.jpg

  • 动态数组执行元素的添加后,默认会回显该元素在数组中的索引编号,如果要屏蔽可以通过传递符

动态数组执行元素的添加后,默认会回显该元素在数组中的索引编号,如果要屏蔽可以通过传递符 out-null的方法来操作;

wKioL1W2V46A2A66AABLSW68CWU304.jpg

  • 元素的移除可以使用remove方法;

wKioL1W2V46Rq_1xAAA_Ztnc7Fo966.jpg


三、动态数组的其他方法与静态数组一致,不再赘述,可参考“Powershell 数组的使用(一)【静态数组】

  • 克隆:$Array2 =$Array1.clone()

  • 元素的替换:$Array1[1]= “World”

  • 元素的查找:$Array1[1].contains(“Hello”),$Array1 –like “*hello*”;