41

動的NSArrayを作成する必要があります。つまり、配列のサイズや、配列に含まれる要素がわかりません。要素は動的に配列に追加する必要があります。NSArrayクラスリファレンスを調べました。arrayWithObjectsというメソッドがあります。これは、配列自体を初期化するときに使用する必要があります。しかし、私は自分がしなければならないことを達成する方法がわかりません。

私は次のようなことをする必要があります:

NSArray *stringArray = [[NSArray init] alloc] ;  
for (int i = 0; i < data.size; i++){  
    stringArray.at(i) = getData(i);
}
4

3 に答える 3

80

を作成するNSArrayと、不変であるため、要素を追加することはできません。NSMutableArray代わりに使用してみてください。

allocまた、との順序を逆にしましたinitallocインスタンスを作成してinit初期化します。

コードは次のようになります (getDataがグローバル関数であると仮定します)。

NSMutableArray *stringArray = [[NSMutableArray alloc] init];
for(int i=0; i< data.size; i++){
   [stringArray addObject:getData(i)];
}
于 2009-04-22T18:12:36.017 に答える
4

NSArray を NSMutableArray に変換すると、値を動的に追加できます。

NSMutableArray *mutableStringArray = [stringArray mutableCopy];
[mutableStringArray addObject:@"theNewElement"];
于 2015-03-07T03:02:48.093 に答える