0
我期待比較2個不同ArrayLists的值,並從1 ArrayList中刪除任何重複項。比較2 ArrayLists並刪除重複項
實施例:
ARR1 = {HF,HA,GM,RV}
ARR2 = {FB,HA}
,因爲它們具有 'HA' 中常見的,我想刪除來自Arr1的'HA'。任何幫助或點在正確的方向將不勝感激。
我期待比較2個不同ArrayLists的值,並從1 ArrayList中刪除任何重複項。比較2 ArrayLists並刪除重複項
實施例:
ARR1 = {HF,HA,GM,RV}
ARR2 = {FB,HA}
,因爲它們具有 'HA' 中常見的,我想刪除來自Arr1的'HA'。任何幫助或點在正確的方向將不勝感激。
您可以使用LINQ的除外,但你將不得不數組列表先轉換成普通數組:
https://msdn.microsoft.com/en-us/library/bb300779(v=vs.110).aspx
Dim list1 As New ArrayList()
list1.Add("A")
list1.Add("B")
list1.Add("C")
Dim list2 As New ArrayList()
list2.Add("A")
list2.Add("B")
Dim array1 = list1.ToArray()
Dim array2 = list2.ToArray()
Dim except = array1.Except(array2).ToArray()
此外,如果您需要自定義比較,使用過載相反:
https://msdn.microsoft.com/en-us/library/bb336390(v=vs.110).aspx
編輯
有極少數的LINQ方法可供ArrayList
,但是你可以將其轉換回很容易:
Dim arrayList as New ArrayList(except)
有沒有辦法做的ArrayList?轉換爲數組意味着我想避免的其他更多變化。或者將數組轉換回ArrayList是否有訣竅? – madmike
看看我的編輯。 – Aybe