objective-c – IOS:NSMutableArray initWithCapacity
发布时间:2020-12-15 02:00:26 所属栏目:百科 来源:网络整理
导读:我有这种情况 array = [[NSMutableArray alloc] initWithCapacity:4]; //in viewDidLoadif (index == 0){ [array insertObject:object atIndex:0];}if (index == 1){ [array insertObject:object atIndex:1];}if (index == 2){ [array insertObject:object a
我有这种情况
array = [[NSMutableArray alloc] initWithCapacity:4]; //in viewDidLoad if (index == 0){ [array insertObject:object atIndex:0]; } if (index == 1){ [array insertObject:object atIndex:1]; } if (index == 2){ [array insertObject:object atIndex:2]; } if (index == 3){ [array insertObject:object atIndex:3]; } 但是如果我按顺序插入对象就可以了,而是按照这个顺序填充数组:0和3之后,它不行,为什么? 解决方法
即使容量为4,您也不能在NSMutableArray中的索引3处插入对象。可变数组具有与其中的对象一样多的可用“单元格”。如果你想在一个可变数组中有“空单元格”,你应该使用[NSNull null]对象。这是一个特殊的存根对象,这意味着没有数据 – 这里。
NSMutableArray *array = [[NSMutableArray alloc] init]; for (NSInteger i = 0; i < 4; ++i) { [array addObject:[NSNull null]]; } [array replaceObjectAtIndex:0 withObject:object]; [array replaceObjectAtIndex:3 withObject:object]; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |