2010-01-27 66 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