views:

27

answers:

1

I have the following code:

    self.itemsCopy = [self.items mutableCopy];
    //[self.itemsCopy addObjectsFromArray:self.items];

    NSLog(@"------- BEFORE APPEND --------");
    NSLog(@"items count: %d",[items count]);
    NSLog(@"itemsCopy count: %d",[itemsCopy count]);

My results are:

 ------- BEFORE APPEND --------
 items count: 15
 itemsCopy count: 15

However if I change the first line from a mutableCopy to addObjectsFromArray:

[self.itemsCopy addObjectsFromArray:self.items];

My new results are:

 ------- BEFORE APPEND --------
 items count: 15
 itemsCopy count: 0

Why does mutableCopy populate itemsCopy, but addObjectsFromArray doesn't?

+4  A: 

Because self.itemsCopy is nil as you missed to initialize it with a NSMutableArray.

Eiko