【发布时间】:2019-12-20 22:20:57
【问题描述】:
我正在尝试为包含超过 10,000 个条目的数据数组的脚本添加性能,然后在 foreach-object 语句中使用它,通过调用另一个函数来用新数据填充空白 ArrayList。我一直在阅读我不应该使用 += 的方法,这是我学到的,因为性能很糟糕,因为它会拆除数组并为每个项目重新构建它。 我遇到的问题是我需要调用一个函数来填充一个空的 ArrayList,但我似乎无法在 .Add() 方法中执行此操作。
旧代码:
Function get_gfe
Function get_os
$gfe = [System.Collections.ArrayList]@()
$gfe = get_gfe
$getos = [System.Collections.ArrayList]@()
$gfe | foreach { $getos += get_os $_}
这需要一个多小时才能用数据填充 $getos。 我希望改用这样的东西,但它不起作用,任何帮助将不胜感激
$gfe | foreach { [void]$getos.Add(get_os $_)}
我知道您可以使用 .Add($_),但这不能满足我的需要,而且我找不到任何在 .Add() 方法中使用其他代码或调用函数的参考。
提前致谢!
【问题讨论】:
-
.Add(get_os $_)->.Add((get_os $_))
标签: arrays powershell