2011-02-02 54 views
1

我使用removeRange函數從列表中刪除了幾個元素,但列表的Count似乎完好無損,所以我認爲它沒有像我期望的那樣工作....所以,你如何刪除元素?我的意思是,最終減少列表的Count值。從List(Of T)中刪除元素

+1

也許我們可以看到一個短你如何去除元素然後檢查計數的例子? – 2011-02-02 22:58:22

回答

3

RemoveRange確實有效。第一個參數是要開始移除的索引,第二個參數是要移除的元素的數量。

所以:

Dim list = New List(Of Integer) From {1, 2, 3} 
list.RemoveRange(0, 2) 
Console.WriteLine(list.Count) 

上面的代碼將從列表中刪除,並輸出「1」的元素12(在取出後,在列表中的元素的數量)。

0

List(Of T).RemoveRange函數會執行適當的刪除操作,所以您應該看到對Count屬性的修改。只有當您爲count參數傳遞0時,纔會看到Count條目的修改或拋出的異常。

-1

我想你,你在做什麼是 假設我們有Persons類的List命名爲lstPersons 然後 lstPersons.RemoveRange(..)

但它應該像

lstPersons = lstPersons.RemoveRange(..)

+0

這是完全錯誤的。 `RemoveRange`被定義爲`Public Sub RemoveRange(index As Integer,count As Integer)`。它不會返回一個值。 – 2011-02-02 23:11:06