本文介绍了PowerShell的Array.Add VS + =的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我发现在PowerShell中数组一些有趣的行为,即如果我声明数组作为:
$阵列= @()
和则尝试使用 $ array.Add(项目)
方法将项目添加到它,我收到以下错误:
异常调用添加和1的说法(S):收藏是一个固定大小的
不过,如果我用追加的项目 $阵列+ =项
,该项目被接受没有问题和固定大小的限制似乎没有不适用。
这是为什么?
解决方案
当您使用 $ array.Add()
方法,你要添加的元素到阵列。数组是固定大小的集合,所以你会收到一个错误。
当您使用 $阵列+ = $元素
,PS创建一个具有相同的元素为 $数组的新阵列
+您要添加,然后它会覆盖原来的一个(S)。你看有什么区别?第一种方法试图修改/扩大原有的数组,而这种方法只是复制所有元素到一个新的温度。阵列,并覆盖旧的 $阵列
-variable。
Source: about_Arrays
这篇关于PowerShell的Array.Add VS + =的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!