2016-08-24 2 views
0

2 개의 다른 ArrayList의 값을 비교하고 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 사용할 수 있습니다 ArrayLists와 함께 할 수있는 방법은

Dim arrayList as New ArrayList(except)

+0

있습니까? 배열로 변환하면 다른 곳에서는 더 이상 변경을 피할 수 있습니다. 또는 배열을 다시 ArrayList로 변환하여 트릭을 수행합니까? – madmike

+0

내 편집을보세요. – Aybe

관련 문제