上一篇介绍了OC的字符串NSString,不清楚的可以看NSString介绍
本篇来讲讲OC的可变字符串NSMutableString,顾名思义,可变字符串本身的内容是可以变得,也就是说它的内存大小不是固定的。
NSMutableString是NSString的一个子类,后者的方法也适用于NSMutableString,这里不再赘述。注意:这些方法在使用时应该使用NSMutableString类
下面看看可变字符串独有的方法
//根据一个字符串创建一个可变字符串
NSMutableString * mString = [[NSMutableString alloc]initWithString:@"Hello World!"];
NSLog(@"mString(%p) = %@",mString,mString);//mString(0x100600390) = Hello World!
//可变字符串特有的方法无非就是增删改。
//先看"增"方法
//在字符串后面追加字符串appendString:aString
NSString * string = @"I'm is a NSMutableString";
[mString appendString:string];
NSLog(@"mString(%p) = %@",mString,mString);//mString(0x100600390) = Hello World!I'm is a NSMutableString
//在字符串后面插入指定格式化字符串appendFormat
[mString appendFormat:@"%u,%@",1,@"&2"];
NSLog(@"mString(%p) = %@",mString,mString);//mString(0x100600390) = Hello World!I'm is a NSMutableString1,&2
//在指定位置插入字符串
[mString insertString:@",yes" atIndex:11];
NSLog(@"mString(%p) = %@",mString,mString);//mString(0x100600390) = Hello World,yes!I'm is a NSMutableString1,&2
//删方法,删除指定范围内的字符串 deleteCharactersInRange:NSRange
[mString deleteCharactersInRange:NSMakeRange(11, 4)];
NSLog(@"mString(%p) = %@",mString,mString);//mString(0x100600390) = Hello World!I'm is a NSMutableString1,&2
//改方法
//重置字符串
[mString setString:@"I'm only a string"];
NSLog(@"mString(%p) = %@",mString,mString);//mString(0x100600390) = I'm only a string
//替换指定范围内的字符串
[mString replaceCharactersInRange:NSMakeRange(0, 6) withString:@"haha"];
NSLog(@"mString(%p) = %@",mString,mString);//mString(0x100600390) = hahaly a string
喜欢的话,帮忙点一下喜欢,谢谢!
如果有错误之处或者偏差,还请斧正!
欢迎大家留言提问,技术要交流才能更快成长!