2010-01-27 79 views
24

有没有办法在Powershell(使用System.Collections.ArrayList)中抑制ArrayList 的返回值(=索引),还是应该使用 另一个类?阻止ArrayList.Add()返回索引

$myArrayList = New-Object System.Collections.ArrayList($null) 
$myArrayList.Add("test") 
Output: 0 

在此先感谢 Milde

回答

44

可以转换为void忽略来自Add方法的返回值:

[void]$myArrayList.Add("test") 

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

$myArrayList.Add("test") > $null 
+0

谢谢你,它完美的作品。 “简单的答案”给你,但我仍然在学习:) – Milde 2010-01-27 18:09:59

+0

我删除了评论,因为它似乎表露无疑 - 这是不是意味着这样的。我将首先给出一个简短/简单的答案,然后进一步深入研究,但后来认为没有必要。 – 2010-01-27 18:11:59

8

两个更多的选择:)

退出空管

$ myArrayList.Add(“test”)|外空

分配结果为$ null:

$空= $ myArrayList.Add( “测试”)

+0

你可以说管道的效率是Out-Null vs> null,还是分配给$ null与cast到void [void]?这四个中哪一个最有效率? – AlwaysQuestioning 2017-01-14 23:00:26

+0

见http://stackoverflow.com/questions/5260125/whats-the-better-cleaner-way-to-ignore-output-in-powershell – 2017-03-21 12:19:09