undefined

一、字符串使用优化

使用 NSString 时,字符串拼接我们可能使用

1
2
3
NSString* str = @"hello";
str = [str stringByAppendingString:@"Jack"]; // 拼接字符串
str = [str stringByAppendingFormat:@"%@", @"come on"]; // 拼接格式化字符串

但是如上方式,会使内存占用较大。NSString 有不可修改的特性,因为每次拼接都相当于申请新的内存空间,拼接的过程就是不断开辟新的内存空间的过程。拼接多次会产生大量的内存空间浪费。如何优化呢?

使用 NSMutableString 做字符串拼接

1
2
3
NSMutableString* str = [NSMutableString stringWithFormat:@"%@", @"hello"];
[str appendString:@"jack"]; // 拼接字符串
[str appendFormat:@"come on"]; // 拼接格式化字符串

NSMutableString 是不会重新开启空间的,可以达到优化的目的。