阻止ArrayList.Add()返回索引

Mil*_*lde 46 .net powershell arraylist

有没有办法压缩Powershell中的ArrayList的返回值(= Index)(使用System.Collections.ArrayList),还是应该使用另一个类?

$myArrayList = New-Object System.Collections.ArrayList($null)
$myArrayList.Add("test")
Output: 0
Run Code Online (Sandbox Code Playgroud)

在此先感谢米尔德

Kei*_*ill 70

您可以强制转换为void以忽略Add方法的返回值:

[void]$myArrayList.Add("test") 
Run Code Online (Sandbox Code Playgroud)

另一种选择是重定向到$ null:

$myArrayList.Add("test") > $null
Run Code Online (Sandbox Code Playgroud)


Sha*_*evy 12

还有两个选择:)

管道输出空

$myArrayList.Add("test") | Out-Null  
Run Code Online (Sandbox Code Playgroud)

将结果分配给$ null:

$null = $myArrayList.Add("test")
Run Code Online (Sandbox Code Playgroud)

  • 您能否谈谈通过管道将Out-Null与> $ null或分配给$ null与强制转换为[void]的效率?这四个中哪一个最有效? (2认同)
  • 参见http://stackoverflow.com/questions/5260125/whats-the-better-cleaner-way-to-ignore-output-in-powershell (2认同)