黑马程序员-oc基础-NSString和NSMutableString区别

时间:2021-02-21 00:30:13

------Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! ------

1.NSMutableString是NSString的子类,NSString有的方法NSMutableString也有

2.NSMutableString是可变的字符串,NSString是不可变字符串

  NSMutableString可以对字符串进行增删改操作,NSString不可以(仅在初始化的时候赋值)

黑马程序员-oc基础-NSString和NSMutableString区别
  NSMutableString *s=@"";

  [s appendString:@"123"]//在原来s字符串基础上追加一个字符串

  NSRange *r=[s rangeOfString:@"2" ];//获取某个字符串的范围

  [s deleteCharactersInRange:r]//在原来的s字符串中删除某个范围的字符串
黑马程序员-oc基础-NSString和NSMutableString区别

 

3.NSString也有一个增加的方法,但是喝NSSMutableString增加的原理不一样

  NSString *s1=[s stringByAppendingString:@"adf"]

 

4.区别解析:

  NSString的调方法增加字符串,会先拿到原理的字符串,然后复制一份,再在新复制的那个对象上进行修改,

  实质返回的是一个新对象,原来的字符串并没有变化。

  NSMutableString修改字符串,就是在原来的字符串上进行修改的,操作的是同一个对象

      所有称NSString是不可变的,NSMutableString时可变的