У меня возникают проблемы с добавлением «nil» в конце массива, я получаю «NSInvalidArgumentException»?
NSMutableArray *k = [NSMutableArray arrayWithCapacity:10];
for (int i=0; i<9; i++){
[k addObject: @"blank"];
}
[k addObject: nil]; //<-- NSInvalidArgumentException
Мне нужно сделать весь этот элемент за элементом в цикле, а затем добавить "nil ".
Спасибо
(Затем я беру этот массив и инициализирую двумерный массив. Проблема в том, что я не могу успешно" replaceObjectAtIndex "с массивом без" nil ". ЕслиЯ строю "k" с помощью "initWithObjects: @" blank ", @" blank ", @" blank ", ... nil", это будет работать. Однако написание 1000 пробелов - это немного. Так что это цельloop.)
////// ЗДЕСЬ КОД ОТ ИСПОЛЬЗОВАНИЯ И ОШИБКИ для инициализации и построения 2D-матрицы с целью чтения и сохранения матрицы из "файла CSV" //////
///*
NSMutableArray *ppp = [NSMutableArray arrayWithCapacity:2];
NSMutableArray *kkk = [NSMutableArray arrayWithCapacity:20];
NSNull *myNull = [NSNull null];
for (int i=0; i<9; i++) {
//[kkk addObject: [NSMutableString stringWithFormat: @"%d",i]];
[kkk addObject: myNull];
}
//[kkk addObject: nil];
[ppp addObject:kkk];
[ppp addObject:kkk];
//*/
/*
// this is successful --> just uncomment this block and comment out the block above
[ppp addObject:[[NSMutableArray alloc] initWithObjects:
@"z1",
@"z2",
@"z3",
@"z4",
@"z5",
@"z6",
@"z0gg",
@"z0hh",
@"z0ii",
@"z0jj",
nil
]];
[ppp addObject:[[NSMutableArray alloc] initWithObjects:
@"a1",
@"b2",
@"c3",
@"d4",
@"e5",
@"f6",
nil
]];
* /
[[ppp objectAtIndex:0] replaceObjectAtIndex:1 withObject:@"HOTDOG"];
[[ppp objectAtIndex:1] replaceObjectAtIndex:1 withObject:@"HOHO"];
// HOHO will replace HOTDOG as well for the code not using "nil"