У меня есть a NSMutableArray
, Я хочу вставить данные в нем, проблема является первой, я хочу проверить, существует ли индекс, где я вставляю данные, или нет. Как сделать это? Я пробую что-то как этот ни кроме чего, работает:
if ([[eventArray objectAtIndex:j] count] == 0)
или
if (![eventArray objectAtIndex:j])
NSArray
и NSMutableArray
не являются разреженными массивами. Таким образом, нет понятия «существует по индексу», только «имеет ли массив N элементов или более».
Для NSMutableArray
общая сумма изменяемых операций составляет:
- (void)addObject:(id)anObject;
- (void)insertObject:(id)anObject atIndex:(NSUInteger)index;
- (void)removeLastObject;
- (void)removeObjectAtIndex:(NSUInteger)index;
- (void)replaceObjectAtIndex:(NSUInteger)index withObject:(id)anObject;
Все другие методы изменяемости могут быть выражены в терминах вышеизложенного и - более конкретно в отношении вашего вопроса - удаление объекта делает не создавать дырки (вы также не можете создать массив из N "дыр", который будет заполнен позже).