2011-10-21 27 views
19

[NSDecimalNumber numberWithInt:i]をforループを使って配列に追加したいと思います。forループを使ってNSArrayにオブジェクトを追加するには?

それはハードコードさ:

NSArray *customTickLocations = [NSArray arrayWithObjects: [NSDecimalNumber numberWithInt:1],[NSDecimalNumber numberWithInt:2],[NSDecimalNumber numberWithInt:3],[NSDecimalNumber numberWithInt:4],[NSDecimalNumber numberWithInt:5],[NSDecimalNumber numberWithInt:6],[NSDecimalNumber numberWithInt:7],[NSDecimalNumber numberWithInt:8],[NSDecimalNumber numberWithInt:9],[NSDecimalNumber numberWithInt:10],[NSDecimalNumber numberWithInt:11],[NSDecimalNumber numberWithInt:12],nil]; 

私はこのようにしたいが、私は....ここ

for (int i=0; i<totalImagesOnXaxis; i++) 
{ 
    customTickLocations = [NSArray arrayWithObject:[NSDecimalNumber numberWithInt:i]]; 
} 

を1つのオブジェクトのみを追加することができ、このうち私を助けて事前に 感謝して下さい、 マダン

+0

どうしてこのアレイが必要ですか?配列 'i'の値が常に' i'であるように見えます。 – raymi

答えて

40

NSArrayのがある不変。変更可能なバージョン、NSMutableArrayを使用してください。

20
NSMutableArray * customTickLocations = [NSMutableArray new]; 
for (int idx = 0; idx < 12; ++idx) { 
    [customTickLocations addObject:[NSDecimalNumber numberWithInt:idx]]; 
} 

... 
5
NSMutableArray *customTickLocations = [NSMutableArray array]; 
for (int i=0; i<totalImagesOnXaxis; i++) 
{ 
    [customTickLocations addObject:[NSDecimalNumber numberWithInt:i]]; 
} 

NSMutableArrayのクラスは、オブジェクトの変更配列を管理するオブジェクトへのプログラム・インタフェースを宣言する。このクラスは、NSArrayのから継承された基本的な配列処理の動作に挿入や削除の操作を追加し

NSMutableArray Class Reference

5
NSMutableArray * customTickLocations = [[NSMutableArray alloc] init]; 
for(int i = 0; i<WhateverNoYouWant;i++){ 
NSDecimalNumber * x = [NSDecimalNumber numberWithInt:i] 
[customTickLocations addObject:x] 

    } 
9
あなたはあなたが持っているファイル名を指定して実行時にオブジェクトを追加または削除NSArray.Forに、実行時にオブジェクトを追加することはできません

NSMutableArrayを使用します。

NSMutableArray *mutableArray=[[NSMutableArray alloc] init]; 
for (int i=0; i<10; i++) { 
    [mutableArray addObject:[NSDecimalNumber numberWithInt:i]]; 
} 
4

私はこの技術を使用して簡単に、これは私はそれがあるようにそれを掲示しています私はこのスレッドに来たときに探していた答えだったNSArrayにさらにいくつかの要素を追加するための素晴らしい方法であることが判明しました簡単に追加できます

私はこのようなオブジェクトを追加私の現在の配列

currentArray = [currentArray arrayByAddingObjectsFromArray: newArray]; 
1

NSArrayに新しいアレイを追加する場合:私はNSArrayaddObjectNSMutableArrayようにすることはできませんだと思う

NSArray *arr = @["1","2","3","4"]; 

。試してみてください:

NSMutableArray *mulArr = [NSMutableArray new]; 
[mulArr addObject:[NSDecimalNumber numberWithInt:number]]; 
関連する問題