NSNumber против примитивного int для NSArray

Я изучаю Objective-C / Cocoa, используя 4-е издание Cocoa Programming для Mac OSX. Я прошу прощения за основной вопрос, но яЯ один из тех людей, которым действительно нужно понять внутренности всего, чтобы это имело смысл для меня, и эта книга неЯ всегда делаю это для моих нужд. Я'я уже изучил основы C ++ и теперь яЯ изучаю Obj-C, так что это мой опыт. Это фрагмент кода, который яя учусь ...

for (i= 0; i < 10; i++) {
    NSNumber *newNumber = [[NSNumber alloc] initWithInt:(i * 3)];
    [array addObject:newNumber];
}

Мой вопрос: зачем создавать экземпляры NSNumber для добавления в массив вместо одной целочисленной переменной. Кажется, что это просто дополнительные издержки, создающие новый экземпляр каждого цикла, которого можно избежать. Но я'Я уверен, что авторы знают, что они делают, и для этого есть причина, может кто-нибудь объяснить?

Ответы на вопрос(3)

Ваш ответ на вопрос