О NSMutableArray objectAtIndex - PullRequest
       10

О NSMutableArray objectAtIndex

4 голосов
/ 14 апреля 2010

ObjectAtIndex начинается с 1 вместо 0? Я использую objectAtIndex и передаю данные 0, но он сказал, что это вне пределов. Итак, я думаю, что это начало с 1, я прав?

Ответы [ 3 ]

5 голосов
/ 14 апреля 2010

Он начинается с 0. Если вы получили исключение, это потому, что массив был пустым. Вы должны сначала что-то добавить в массив, прежде чем он будет иметь какое-либо содержимое. Используйте addObject:, чтобы положить в него предметы. Используйте count, чтобы узнать, сколько в нем предметов.

4 голосов
/ 14 апреля 2010

NSMutableArray индексируется нулем. Тем не мение; из документов :

Если индекс находится за концом массива (то есть, если индекс больше или равен значению, возвращенному count), возникает исключение NSRangeException.

Если в массиве ничего не хранится, доступ к индексу 0 не пройдет вышеуказанный тест и приведет к ошибке.

4 голосов
/ 14 апреля 2010

Нет, оно начинается с 0.

Убедитесь, что ваш массив заполнен. Если массив пуст, вы не можете использовать -objectAtIndex: с любыми индексами, так как нет способа вернуть что-либо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...