0

我正在尝试创建一个大小为 100 的 NSMutableArray,然后用三个空格的字符串填充每个索引," ". 我要么错误地创建了数组,要么错误地返回了对象。这是我创建数组的方法:

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

此方法无法正常运行。我在上面包含的循环之后添加了一个 for 循环,NSLog @"@%", [_board objectAtIndex: i];以便我可以验证每个索引处实际上有由三个空格组成的字符串,但它会在控制台中打印出的所有内容都是“nil”。到目前为止,我已经尝试过:

  • 我认为这可能addObjectAtIndex是问题所在,所以我只是将其更改为addObject并将其更改initWithCapacity为只是init];为了允许 for 循环将数组构建为 100 大小。

  • 然后我认为问题可能在于尝试插入文字字符串@" "(IDK 如何让 Stackoverflow 显示我的 3 个空格,而不仅仅是 1 个),所以我NSString *input = @" ";在 for 循环之前添加,然后更改[_board addObject:@" "];为 `[_board addObject:输入;

关于如何实际创建大小为 100 的 NSMutableArray 并使每个点包含相同的三个空格字符串的任何建议?

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 回答