iOS错误:从NSArray对象分配NSMutableString(类型'void')?

cma*_*mac 0 objective-c string-concatenation nsmutablestring ios

我似乎无法解决此处出现的错误:"从不兼容的类型'void'分配给'NSMutableString*__ strong'".我试图追加的数组字符串值是一个NSArray常量.

NSMutableString *reportString     
reportString = [reportString appendString:[reportFieldNames objectAtIndex:index]];
Run Code Online (Sandbox Code Playgroud)

das*_*ght 6

appendString是一种void方法; 你可能正在寻找

reportString = [NSMutableString string];
[reportString appendString:[reportFieldNames objectAtIndex:index]];
Run Code Online (Sandbox Code Playgroud)

您可以append通过将其与初始化相结合来完全避免:

reportString = [NSMutableString stringWithString:[reportFieldNames objectAtIndex:index]];
Run Code Online (Sandbox Code Playgroud)

请注意,还有另一种NSString需要分配的附加方法:

NSString *str = @"Hello";
str = [str stringByAppendingString:@", world!"];
Run Code Online (Sandbox Code Playgroud)