0

サイズ100のNSMutableArrayを作成してから、すべてのインデックスに3つの空白スペースの文字列を入力しようとしています" "。配列を誤って作成している、オブジェクトを誤って返しています。配列を作成する私のメソッドは次のとおりです。

-(void) initBoard{
    _board = [board initWithCapacity:100];
    for(int i =0; i < 100; i++){
        [_board addObject:@"   "];
    }
}

このメソッドは正しく機能していません。上記のループの後にforループを追加して、NSLog @"@%", [_board objectAtIndex: i];すべてのインデックスに3つの空白スペースで構成される文字列が実際に存在することを確認できるようにしましたが、コンソールに出力されるのは「nil」だけでした。これまでに試しました:

  • addObjectAtIndexおそらく問題だと思ったので、forループで配列をサイズ100にビルドできるようにするために、をに変更してaddObjectに変更しinitWithCapacityました。init];

  • 次に、リテラル文字列を挿入しようとしたことが問題である可能性があると考えたため@" "(IDKでStackoverflowに1つではなく3つのスペースを表示させる方法)、NSString *input = @" ";forループの直前に追加[_board addObject:@" "];してから、 `[_board addObject:入力;

サイズ100のNSMutableArrayを実際に作成し、すべてのスポットに3つの空白スペースの同じ文字列を含める方法に関する提案はありますか?

4

1 に答える 1

2

alloc変更可能な配列を食べて、それよりもinitializeする必要があります。

-(void) initBoard{
    _board = [[NSMutableArray alloc] initWithCapacity:100];
    for(int i =0; i < 100; i++){
        [_board addObject:@"   "];
    }
}
于 2013-02-28T02:47:06.317 に答える