0
我想这个代码...附加的字符串不工作
NSString *tileString = [[NSString alloc] init];
for (int i = 0; i < [[GameP objectForKey:@"groundMap"] length]; i += 5) {
tileString = [[GameP objectForKey:@"groundMap"] substringWithRange:NSMakeRange(i, 5)];
[tileString stringByAppendingString:@"0000"];
[sharedInstance.groundMap addObject:tileString];
}
这是一个从物体发出的5字符字符串为“T0001”,所以我想用“t0001000”结束了,但它的不工作,当我检查sharedInstance.groundMap数组中的所有字符串仍然是“t0001”
我应该使用NSMutableString吗?
谢谢你,为什么你的版本我没有必要的alloc和init,它已经通过substringWithRange完成了吗? – Phil
@Phil,是substringFromRange返回一个字符串,所以你的alloc init是不必要的。 – rdelmar
alloc/init用于创建一个新对象。你只需要一个现有的参考。你所得到的是一个浪费的字符串,只要你将另一个字符串赋给'tileString',就会被丢弃。 – rmaddy