NSArray NSMutableArray mutableCopy copy

總結:

[NSArray copy] 淺拷貝 還是那個對象
[NSArray mutableCopy] 深拷貝 得到NSMutableArray
[NSMutableArray copy] 深拷貝 得到 NSArray
[NSMutableArray mutableCopy] 深拷貝 得到 NSMutableArray

代碼分析

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    NSString *str = @"ljp";
// 1.原來是一個可變數組
    NSMutableArray *muArray = [NSMutableArray arrayWithObjects:str, nil];
// 2.深拷貝  得到的是一個NSArray
    NSMutableArray *copyMutableArray = [muArray copy];
// 3.淺拷貝  得到的是一個 NSMutableArray
    NSMutableArray *mutablCopyMutableArray = [muArray mutableCopy];

//    [copyMutableArray addObject:@"ppp"];
//    [mutablCopyMutableArray addObject:@"lll"];

// 4. 初始化一個 NSArray    
    NSArray *array = [[NSArray alloc] initWithObjects:@"yyyy", nil];
// 5. 淺拷貝  還是那個對象
    NSArray *copyArray = [array copy];
// 6. 深拷貝 得到的是 NSMutaleArray
    NSMutableArray *mutableCopyArray = [array mutableCopy];
    
    [mutableCopyArray addObject:@"oooo"];
}


著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章