1
可以說我有10個元素的列表框刪除項目的列表,我把一個List列表1中前4種元素,和元素的另一個列表list2中的其餘部分:從另一個列表中
list2 = listbox.remove(list1);
像這樣的東西。這是可行的嗎?
謝謝。
可以說我有10個元素的列表框刪除項目的列表,我把一個List列表1中前4種元素,和元素的另一個列表list2中的其餘部分:從另一個列表中
list2 = listbox.remove(list1);
像這樣的東西。這是可行的嗎?
謝謝。
你可以用LINQ很容易地做到這一點:
list2 = listbox.Items.Except(list1);
然而,Except
需要比較listbox
在list
的項目和項目產生的結果。上面的例子(默認行爲)假定列表中的項目類型由參考比較唯一標識(在這種情況下聽起來很好)。
如果該類實現IEquatable<T>
和/或覆蓋Equals
,那麼Except
將使用該方法來測試是否相等。
'list2 = listbox.Items.Except(list1)'maybe? –
@BalaR:的確如此。這是一個複製/粘貼錯誤,現在已經更正。 – Jon