ios 中的 stringByAppendingString 和 appendString 之间的区别

Difference between stringByAppendingString and appendString in ios

stringByAppendingStringappendString 有什么区别?如果 NSString 不是可变的,那么它如何附加字符串?

appendString: 来自 NSMutableString, stringByAppendingString: is from NSString.

第一个改变现有的NSMutableString

Adds to the end of the receiver the characters of a given string.

第二个returns一个新的NSString,它是接收者和参数的串联。

Returns a new string made by appending a given string to the receiver.

原因是常规 NSString 是不可变的,您不能直接向其附加内容。然而,NSMutableString 顾名思义是可变的,因此可以修改。

stringByAppendingStringdocumentation 声明它

Returns a new string made by appending a given string to the receiver

所以它不会修改现有的字符串 - 它不能,因为正如您所指出的,NSString 是不可变的

另一方面,

appendStringNSMutableString 的变异方法,它修改接收 NSMutableString.