OC字符串对象:2-NSMutableString类
NSMutableString是继承自NSString类的,所以NSString中定义的所有方法NSMutableString都可以使用。与NSString相比,NSMutableString类的对象在内存中存储的空间是可以变化的,因此,存储的字符串长度和内容都可以改变。
NSMutableString的初始化
NSMutableString类的对象,可以采用如下几个方法来进行初始化。
- stringWithCapacity:方法,需要指定初始化时预留的可供存储的字符串最大长度;
- initWithCapacity: 方法, 需要指定初始化时预留的可供存储的字符串最大长度;
- stringWithString: 方法, 传入一个初始化字符串。
示例:
int main(int argc, const char * argv[]) {
@autoreleasepool {
//实例化一个NSMutableString类型的对象
NSMutableString *mString1 = [NSMutableString stringWithCapacity:100];
NSMutableString *mString2 = [[NSMutableString alloc] initWithCapacity:100];
NSMutableString *mString3 = [NSMutableString stringWithString:@"www.99ios.com"];
}
return 0;
}
注意:可变字符串不能使用@""进行赋值,因为使用@""创建的字符串是一个常量字符串。
NSMutableString字符串的修改
由于可变字符的特性,决定了可以对可变字符串的内容进行修改,例如插入、拼接等操作。如下代码,演示了对可变字符串进行赋值、拼接等操作。
int main(int argc, const char * argv[]) {
@autoreleasepool {
//实例化一个NSMutableString类型的对象
NSMutableString *mString = [NSMutableString stringWithCapacity:100];
//赋值
[mString setString:@"www.99ios.com"];
NSLog(@"%@",mString);
//拼接
[mString appendString:@" 九九学院"];
NSLog(@"%@",mString);
//在指定位置插入字符串
[mString insertString:@"欢迎访问 " atIndex:0];
NSLog(@"%@",mString);
}
return 0;
}
运行结果:
NSMutableString字符串的替换与删除
对于可变字符串,可以替换其中的一些内容,以及删除一些内容。
int main(int argc, const char * argv[]) {
@autoreleasepool {
//替换
NSMutableString *mString = [NSMutableString stringWithString:@"www.99ios.com"];
NSLog(@"原始值:%@",mString);
NSRange range = NSMakeRange(4, 5);
[mString replaceCharactersInRange:range withString:@"apple"];
NSLog(@"替换后:%@",mString);
//删除
[mString deleteCharactersInRange:range];
NSLog(@"删除后:%@",mString);
}
return 0;
}
运行结果:
连接两个字符串对象
使用stringByAppendingString方法,可以连接两个NSMutableString类型的字符串对象,并返回一个NSString类型的字符串。
int main(int argc, const char * argv[]) {
@autoreleasepool {
//连接两个字符串对象
NSMutableString *mString1 = [NSMutableString stringWithString:@"www.99ios.com"];
NSMutableString *mString2 = [NSMutableString stringWithString:@" 九九学院"];
NSString *mNewString = [mString1 stringByAppendingString:mString2];
NSLog(@"合并后的字符串:%@",mNewString);
}
return 0;
}
运行结果:
示例代码
https://github.com/99ios/4.2.2
文章发布时间为: September 1st , 2016 at 02:28 pm
最后编辑时间为: August 27th , 2017 at 09:47 am
本文由 99ios 创作,转载请注明出处
最后编辑时间为: August 27th , 2017 at 09:47 am
本文由 99ios 创作,转载请注明出处