2014-11-20 5 views
0

나는 Array1 & Array2라는 두 개의 배열을 가지고 있습니다. Array1은 여러 속성이있는 사용자 지정 개체로 채워진 배열입니다. 배열 2는 정수로 채워진 배열입니다.하나의 배열을 다른 배열과 비교하기

Array1의 객체의 int 속성이 Array2의 int와 일치하는지 알아보기 위해 Array1을 Array2와 비교하려고합니다.

for (int i = 0; i < Array1.count; i++) { 
    Acorn *acorn = [Array1 objectAtIndex:x]; 

} 

어떤 조언을 다음과 같이

현재 내가있어 코드는?

+0

'containsObject'는 hetrogeneous 개체를 비교하는 경우 도움이되지 않습니다. array1의 모든 요소에 대해 array2를 모두 비교하려고합니다. 느려지지만 다른 선택은 없을 것입니다 (또는 중요하지 않을 수도 있음). – trojanfoe

+0

주문이 중요합니까? 즉 [a.1, a.2] == [1,2]이고 [a.2, a.1]! = [1,2]? –

+0

@MANIAK_dobrii 아니, 그렇게해서는 안됩니다. 그냥 Array1 Array2의 모든 ints를 포함하는 한 ... – Tentatively

답변

1

이와 비슷한 것이 도움이 될 수도 있습니다.

for (int i = 0; i < Array1.count; i++) { 
    Acorn *acorn = [Array1 objectAtIndex:i]; 
    if([Array2 containsObject:acorn.intProp]){ 
     // Take this elements in Array 3 and this will be your filtered array. 
    } 
} 
관련 문제