在我的应用程序中,我想将对象插入 NSMutableArray:
NSMutableArray *test = [NSMutableArray arrayWithObjects:[NSNumber numberWithInt:1], [NSNumber numberWithInt:3], [NSNumber numberWithInt:4], nil];
[test insertObject:[NSNumber numberWithInt:2] atIndex:1];
我在第二个代码行放了断点,调试区域的结果是好的:
self = (MasterViewController *) 0x074b9cb0
test = (NSMutableArray *) 0x07462c50 @"3 objects"
[0] = (id) 0x07461f10 (int) 1
[1] = (id) 0x07473ec0 (int) 3
[2] = (id) 0x074cbd30 (int) 4
但运行第二行代码后,结果出乎意料:
self = (MasterViewController *) 0x074b9cb0
test = (NSMutableArray *) 0x07462c50 @"4 objects"
[0] = (id) 0x074713f0 (int) 2
[1] = (id) 0x07473ec0 (int) 3
[2] = (id) 0x074cbd30 (int) 4
[3] = (id) 0x07461f10 (int) 1
谁能解释为什么在索引 1 处插入后第一个对象(int 1)成为最后一个对象,或者这种情况是 ios 6.1 的错误?
在索引> 1处插入对象时,没有问题。