NSArray isEqualToArray
- (BOOL)isEqualToArray:(NSArray *)otherArray
Parameters
otherArray
An array.
Return Value
YES if the contents of otherArray are equal to the contents of the receiving array, otherwise NO.
Discussion of [NSArray isEqualToArray]
Two arrays have equal contents if they each hold the same number of objects and objects at a given index in each array satisfy the isEqual: test.
NSArray isEqualToArray example.
NSArray *origArray = @[obj1, obj2, oj3];
NSMutableArray *newMutableArray = nil;
newMutableArray = [NSMutableArray arrayWithArray:originalArray];
thereIsSomeDifference= ![newMutableArray isEqualToArray: [originArray mutableCopy] ];
NSMutableArray *newMutableArray = nil;
newMutableArray = [NSMutableArray arrayWithArray:originalArray];
thereIsSomeDifference= ![newMutableArray isEqualToArray: [originArray mutableCopy] ];
Example of [NSArray isEqualToArray].
initA = [NSMutableArray arrayWithArray:originalArray];
initB = [originalArray mutableCopy];
if (initA == initB) {
// unreachable, because the pointers differ
}
// however
if ([initA isEqualToArray:initB]) {
// will be true
// because
for (int i=0; i
if ([initA objectAtIndex:i] == [initB objectAtIndex:i]) {
NSLog(@"this will log every element %@ in the arrays", [initA objectAtIndex:i]);
}
}
}
initB = [originalArray mutableCopy];
if (initA == initB) {
// unreachable, because the pointers differ
}
// however
if ([initA isEqualToArray:initB]) {
// will be true
// because
for (int i=0; i
NSLog(@"this will log every element %@ in the arrays", [initA objectAtIndex:i]);
}
}
}
NSArray isEqualToArray example.
NSArray *arr1 = [[NSArray alloc]initWithObjects:@"a2223a",@"ab33b",@"a1acdf",@"ac23c45", nil];
NSArray *arr11 = [arr1 sortedArrayUsingSelector:@selector(localizedCompare:)];
NSArray *arr2 = [[NSArray alloc]initWithObjects:@"ab33b",@"ac23c45",@"a1acdf",@"a2223a", nil];
NSArray *arr22= [arr2 sortedArrayUsingSelector:@selector(localizedCompare:)];
if([arr11 isEqualToArray:arr22])
{
NSLog(@"equal");
}
else
{
NSLog(@"Not equal");
}
NSArray *arr11 = [arr1 sortedArrayUsingSelector:@selector(localizedCompare:)];
NSArray *arr2 = [[NSArray alloc]initWithObjects:@"ab33b",@"ac23c45",@"a1acdf",@"a2223a", nil];
NSArray *arr22= [arr2 sortedArrayUsingSelector:@selector(localizedCompare:)];
if([arr11 isEqualToArray:arr22])
{
NSLog(@"equal");
}
else
{
NSLog(@"Not equal");
}