NSMutableString *str, *str1;//分配在这里
我使用的[str appendString:str1]不起作用。[str appendFormat:str1]不工作。
那么,如何用另一个NSMutableString附加一个NSMutableString。
@str是一个初始化到nil的empty string。str1有一定的价值。[str appendString str1]返回null
发布于 2010-08-30 21:21:25
看起来你是在给nil发信息。nil is a object,它什么都不是。向nothing发送消息只会返回任何内容。为了追加这些字符串,您需要初始化为一个空字符串。如下所示:
NSMutableString *str = [NSMutableString string];然后你的代码就可以工作了。如下所示:
[str appendString:str1];发布于 2010-08-30 21:35:02
如果为str == nil,则不会执行任何调用,因为没有分配用于接收消息的对象,但也不会引发异常(发送到nil的消息在Objective-C中设计为返回nil )。
NSMutableString *str, *str1;
str = [NSMutableString stringWithString:@"Hello "];
str1 = [NSMutableString stringWithString:@"World"];
NSMutableString *sayit = [str appendString:str1];发布于 2015-07-14 02:27:43
Swift版本
尽管在Swift中,使用NSMutableString、it may at times be necessary并不是一般的做法。你可以这样做:
var str: NSMutableString = NSMutableString()
var str1: NSMutableString = "some value"
str.appendString(str1 as String) // str = "some value"请注意,在Swift中追加字符串的通常方法如下:
var str = ""
let str1 = "some value"
str += str1其中str和str1被推断为String类型。
https://stackoverflow.com/questions/3599985
复制相似问题