[array objectAtIndex:i]はL値として機能しないため、オブジェクトをインデックスiに設定するために使用することはできません。
[array objectAtIndex:i]
使用する - -insertObject:atIndex: または replaceObjectAtIndex:withObject: 。
-insertObject:atIndex:
replaceObjectAtIndex:withObject: