在PowerShell中,当我们将一串强类型的值赋给一个变量时,这个变量就成了强类型数组。如果在一个强类型的数组中增加一个非强类型的数组元素(使用“+=”操作符),这时该数组将又变回普通数组。
看看这个例子:
复制代码 代码如下:
PS> $array = [Int[]](1,2,3,4,5)
PS> $array.GetType().FullName
System.Int32[]
PS> $array += "foo"
PS> $array.GetType().FullName
System.Object[]
之所以数组又变回为一个普通数组,这是因为要往数组中添加一个元素,先得创建一个普通数组,然后把强类型数组中的所有元素都拷贝进普通数组中。
如果往强类型数组中添加一个同类型的数据,则数组类型保持不变。
例子:
复制代码 代码如下:
PS> [Int[]]$array = 1,2,3,4,5
PS> $array.GetType().FullName
System.Int32[]
PS> $array += 6
PS> $array.GetType().FullName
System.Int32[]
其实强类型的数组就这样简单,至于有什么用途,小编暂时还没有用到,大家可以先了解有这么一个东东,真正在需求的时候能想起来它就行了。