【发布时间】:2016-09-16 02:25:49
【问题描述】:
在以下代码中,我使用isKindOfClass 检查数组,但是当我检查这两个条件是否都为真时:
NSString *values[] = {@"hello", @"world"};
CFArrayRef arrayRef = CFArrayCreate(kCFAllocatorDefault, (void *)values, (CFIndex)2, NULL);
NSArray *array = (__bridge NSArray *)arrayRef;
if ([array isKindOfClass:[NSMutableArray class]]) {
NSLog(@"array is mutableArray");
}
if ([array isKindOfClass:[NSArray class]]) {
NSLog(@"array is immutabelArray");
}
结果:
2016-09-16 10:00:32.873 TestArray[12246:198137] array is mutableArray
2016-09-16 10:00:32.874 TestArray[12246:198137] array is immutabelArray
结果让我很困惑 数组是不可变的,为什么打印数组是可变的。
【问题讨论】:
-
添加另一个日志:
NSLog(@"array is a %@", [array class]);.
标签: ios objective-c nsmutablearray nsarray