在下面的代码中,如果我返回 NSMutableArray 而不是方法的返回类型 NSArray,我不会收到任何警告或编译错误。
但是,使用 -copy 方法将返回值转换为 NSArray 是一种好习惯,如下面的代码?
还是我应该返回 NSMutableArray?
+(NSArray *)returnImutableArray {
NSMutableArray *arr = [[NSMutableArray alloc] init];
[arr addObject:@"a"];
[arr addObject:@"b"];
//return arr; // no warning
return [arr copy];
}