如何查找数组是否包含两个或多个对象
How to find If array contains two or more objects
我正在尝试实现包含两个或更多参数的 containsObject,这可能吗?
目前我有:
显然争论太多了。我已经深入研究了 Apple 的文档,但我还没有找到任何东西。有什么建议吗?
if ([ myArray containsObject:@"1", @"2"]){
NSLog(@"if");
} else if([ myArray containsObject:@"1", @"2",@"3",@"4"]) {
NSLog(@"else if");
}else if([ myArray containsObject:@"1", @"2",@"3"]) {
NSLog(@"else");
}
我的数组:-
myArray is (
1,
2,
3,
4
)
if ([myArray containsObject:@"1"] || [ myArray containsObject: @"2"]) {
NSLog(@"if");
} else {
NSLog(@"else");
}
您需要编写自己的自定义代码。将方法中所有必需的对象作为数组传递,并遍历所有对象的数组。如果未找到任何对象,return false
.
-(BOOL)containsObjects:(NSArray*)arrObj
{
BOOL result = YES;
for(CustomObject *cObj in arrObj) {
result = [mainArray containsObject:cObj];
if(result == NO) {
break;
}
}
return result;
}
你可以检查数组的子集
NSArray *arry1= [NSArray arrayWithObjects:@"1",@"2",@"3",@"4", nil];
NSArray *arry2= [NSArray arrayWithObjects:@"1",@"2", nil];
NSSet *set1 = [NSSet setWithArray:arry1];
NSSet *set2 = [NSSet setWithArray:arry2];
if ([set2 isSubsetOfSet:set1])
{
NSLog(@"array1 contains all elements of array 2");
}else{
NSLog(@"array1 does not contains all elements of array 2");
}
我正在尝试实现包含两个或更多参数的 containsObject,这可能吗?
目前我有:
显然争论太多了。我已经深入研究了 Apple 的文档,但我还没有找到任何东西。有什么建议吗?
if ([ myArray containsObject:@"1", @"2"]){
NSLog(@"if");
} else if([ myArray containsObject:@"1", @"2",@"3",@"4"]) {
NSLog(@"else if");
}else if([ myArray containsObject:@"1", @"2",@"3"]) {
NSLog(@"else");
}
我的数组:-
myArray is (
1,
2,
3,
4
)
if ([myArray containsObject:@"1"] || [ myArray containsObject: @"2"]) {
NSLog(@"if");
} else {
NSLog(@"else");
}
您需要编写自己的自定义代码。将方法中所有必需的对象作为数组传递,并遍历所有对象的数组。如果未找到任何对象,return false
.
-(BOOL)containsObjects:(NSArray*)arrObj
{
BOOL result = YES;
for(CustomObject *cObj in arrObj) {
result = [mainArray containsObject:cObj];
if(result == NO) {
break;
}
}
return result;
}
你可以检查数组的子集
NSArray *arry1= [NSArray arrayWithObjects:@"1",@"2",@"3",@"4", nil];
NSArray *arry2= [NSArray arrayWithObjects:@"1",@"2", nil];
NSSet *set1 = [NSSet setWithArray:arry1];
NSSet *set2 = [NSSet setWithArray:arry2];
if ([set2 isSubsetOfSet:set1])
{
NSLog(@"array1 contains all elements of array 2");
}else{
NSLog(@"array1 does not contains all elements of array 2");
}