美文网首页
【字符串学习笔记】----------语法

【字符串学习笔记】----------语法

作者: 兔Hio | 来源:发表于2016-11-16 09:55 被阅读13次

    第一种(有发生替换):

    NSString * s = @"sss";

    NSString * x = [s stringByReplacingOccurrencesOfString:@"s" withString:@"x"];

    返回一个新的指针,内容是@"xxx"。新指针的retainCount是1,不可以手动release,会autorelease。

    第二种(没有发生替换):

    NSString * s = @"sss";

    NSString * x = [s stringByReplacingOccurrencesOfString:@"y" withString:@"x"];

    因为没有发生替换,所以返回值还是原来的指针,内容还是@"sss"。这时候s的retainCount会被加1。

    相当于NSString * x = [[s retain] autorelease];

    建议:

    如果需要多次替换字符串中的字符,最好不要使用stringByReplacingOccurrencesOfString。应该使用NSMutableString的实例方法replaceOccurrencesOfString:withString:options:range:。

    相关文章

      网友评论

          本文标题:【字符串学习笔记】----------语法

          本文链接:https://www.haomeiwen.com/subject/qrfmyttx.html