stringByAppendingString
和appendString
之间有什么区别?如果NSString
不可变,那么它如何附加字符串?
答案 0 :(得分:4)
appendString:
来自NSMutableString
,stringByAppendingString:
来自NSString
。
第一个变异现有的NSMutableString
。
在接收器的末尾添加给定字符串的字符。
第二个返回一个新的NSString
,它是接收者和参数的串联。
返回通过将给定字符串附加到接收器而生成的新字符串。
原因是常规NSString
是不可变的,你不能直接向它添加内容。但是,顾名思义,NSMutableString是可变的,因此可以修改。
答案 1 :(得分:0)
stringByAppendingString
的{{3}}表明它
返回通过将给定字符串附加到接收器而生成的新字符串
所以它没有修改现有的字符串 - 它不能,因为正如你所说,NSString是不可变的
另一方面, appendString
是NSMutableString
的一种变异方法,可以修改接收NSMutableString
。