0

我如何将 连接int length到我试图插入该数组的字符串,所以它是“ C10 ”,给定长度 == 10,当然。我看到@"%d", intVarName在其他地方使用的方法。在 Java 中,我会完成"C" + length;. 我正在使用该replaceObjectAtIndex方法替换我之前在MSMutableArray“board”中填充的空字符串“”。@"C%d", length但是,当我在该方法的末尾添加该部分时上面的倒数第二行i++ ,我收到了一个错误。

作为我作业的一部分,我必须随机放置“Chutes”(由格式字符串“C'length_of_chute'”表示,在第一个作业中,它们的长度始终为 10,因此它只是“C10”)到由数组表示的游戏板。

   -(void)makeChutes: (int) length {// ??Change input to Negative number, Nvm.
    //??Make argument number of Chutes ??randomly?? across the board.
    for(int i = 0; i < length;){
        int random = arc4random_uniform(101);
        if ([[board objectAtIndex:random] isEqual:@""]) {
            //[board insertObject:@"C%d",length atIndex:random];
            [board replaceObjectAtIndex:random withObject:@"C%d",length];
            i++;
        }
    }
}

请忽略其中的额外和垃圾代码,我将其留在上下文中。

4

1 回答 1

1

在 Objective-C 中,该stringWithFormat方法用于格式化字符串:

NSString *formattedString = [NSString stringWithFormat:@"C%d", length];
[someArray insertObject:formattedString];

在 Objective-C 中创建自己的格式化字符串通常更容易,因为如您所见,调用可能相当冗长!

于 2013-02-18T09:16:39.690 回答