NSarray用copy修饰

@interface ViewController ()
@property(nonatomic,strong)NSArray* array;//错误写法 //正确写法是的用copy修饰
@property(nonatomic,copy)NSMutableArray* tableaarray;//错误写法 //正确写法是的用strong修饰

@end

@implementation ViewController

  • (void)viewDidLoad {
    [super viewDidLoad];

    NSMutableArray *mutableArray = [NSMutableArray array];

    [mutableArray addObject:@"1"];

    self.array = mutableArray;

    NSLog(@"array---%@",self.array);

    [mutableArray addObject:@"2"];

    NSLog(@"array---%@",self.array);

    //不可变数组array随着可变数组增加而增加 万一执行删除元素就会崩溃 这是用strong修饰的只是拷贝指针,浅拷贝
    //总街e:不可变数组不能用strong修饰而是只能用copy修饰

NSMutableArray* changearray=[NSMutableArray array];

[changearray addObject:@"1"];

self.tableaarray=[changearray mutableCopy];//此时这个可变数组已经变成不可变数组 执行删除元素就会崩溃

}

你可能感兴趣的:(NSarray用copy修饰)