2016-08-24 101 views
0

我期待比較2個不同ArrayLists的值,並從1 ArrayList中刪除任何重複項。比較2 ArrayLists並刪除重複項

實施例:

ARR1 = {HF,HA,GM,RV}

ARR2 = {FB,HA}

,因爲它們具有 'HA' 中常見的,我想刪除來自Arr1的'HA'。任何幫助或點在正確的方向將不勝感激。

回答

0

您可以使用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() 

enter image description here

此外,如果您需要自定義比較,使用過載相反:

https://msdn.microsoft.com/en-us/library/bb336390(v=vs.110).aspx

編輯

有極少數的LINQ方法可供ArrayList,但是你可以將其轉換回很容易:

Dim arrayList as New ArrayList(except)

+0

有沒有辦法做的ArrayList?轉換爲數組意味着我想避免的其他更多變化。或者將數組轉換回ArrayList是否有訣竅? – madmike

+0

看看我的編輯。 – Aybe

相關問題