0

我有两个数组:

array1=[1,2,3,4,5,6,7,8,9,10,11]
array2=[1,2]

我想比较“array2”中的天气元素是否存在于“array1”中。如果是,那么我需要运行一个函数,否则退出。怎么做?

4

3 回答 3

7

我有这样的常见物品:-

NSMutableSet *idSet=[NSMutableSet setWithArray:Array1];
[idSet intersectSet:[NSSet setWithArray:Array2]];
NSArray *Common_array=[idSet allObjects];

在公共数组中,您可以获得两个数组中都存在的相同对象,并且在 Common_array 中是 0 对象,而不是在两个数组中都没有相同的对象。

于 2012-08-01T07:41:32.283 回答
1

一个简单的逻辑方法是 for 循环:

for(int a = 0; a < array1.count; a++) {
    for(int b = 0; b < array2.count; b++) {
        if([[array1 objectAtIndex:a] isEqualToString:[array2 objectAtIndex:b]]) {
            //do something here
        }
    }
}
于 2012-08-01T07:25:42.590 回答
1

枚举array1怎么样?

类似的东西

NSArray *array1 = ...;
NSArray *array2 = ...;

[array1 enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
    if ([array2 containsObject: obj]) {
        // Run the function you wanted to
    }
}];
于 2012-08-01T07:26:19.687 回答