2012-01-02 10 views
-1

私はiPhoneを初めて使用しています。私は2D配列を宣言するために多くを試みたが、結果を得ることができない。Objective-Cで2D配列を宣言するには?

NSMutableArray *outerarray = [[NSMutableArray alloc] init]; 
outerarray = [NSMutableArray arrayWithObjects: 
    [NSMutableArray arrayWithObjects:@"10-20","21-30","31-40","41-50","51-60","61-70","71-80","81-90","91-100",nil, 
    [NSMutableArray arrayWithObjects:@"10-20","21-30","31-40","41-50","51-60","61-70","71-80","81-90","91-100",nil], 
    nil]; 

2つの配列要素を結合して他の要素と比較したいと考えています。

誰でも私をお手伝いできますか?

答えて

2

@"..."は、NSStringです。 "..."ではなく、Cの文字列定数です。 NSArrayに入れているすべてのNSStringオブジェクトには、@"..."の構文を使用する必要があります。

+0

私はすでに試してみましたが、うまくいきませんでした。それはエラーを表示していませんでしたが、結合された結果を示していませんでした。私はネストされたforループで次のコードで値を取得しようとしました。 NSMutableArray * stg = [[outerarray objectAtIndex:i] objectAtIndex:j]; – deepti

+1

'[[outerarray objectAtIndex:i] objectAtIndex:j]'は 'NSMutableArray'ではなく' NSString'を与えます。 – Ferruccio

1

NS [変更可]配列は、私が知る限り、2Dをサポートしていません。おそらく、それを変更して2Dの要素にアクセスするためにそれを陪審することができます(独自のクラスにする)。任意の要素にアクセスできるようになると、それらを「結合」して必要に応じて比較することができます。代わりに、Objective-CはCのスーパーセットであるため、int arrayName [][]が利用可能です(しかし、推奨しません)。