Objective-C:Foundation框架-常用类-NSMutableString
2015-12-24 15:30
387 查看
NSString是不可变的,不能删除字符或修改字符,它有一个子类NSMutableString,为可变字符串。
NSMutableString的两种创建方法:
- (id) initWithCapacity:(NSUInteger)capacity
+ (id) stringWithCapacity:(NSUInteger)capacity
capacity只是一个最优值,字符串的大小并不限于所提供的容量,设置了capacity,可以预分配一块内存来存储它,操作速度会快很多,也可以使用创建NSString的方法来创建NSMutableString,因为NSMutableString是NSString的子类。其用法如下:
NSMutableString的两种创建方法:
- (id) initWithCapacity:(NSUInteger)capacity
+ (id) stringWithCapacity:(NSUInteger)capacity
capacity只是一个最优值,字符串的大小并不限于所提供的容量,设置了capacity,可以预分配一块内存来存储它,操作速度会快很多,也可以使用创建NSString的方法来创建NSMutableString,因为NSMutableString是NSString的子类。其用法如下:
#pragma mark 可变字符串的创建 void stringCreate() { // 预先分配10个字数的存储空间 NSMutableString *str = [[NSMutableString alloc] initWithCapacity:10]; // 设置字符串内容 [str setString:@"1234"]; // 拼接一个字符串 [str appendString:@"567"]; // 拼接字符串 [str appendFormat:@"age is %i and height is %.2f", 27, 1.55f]; // 替换字符串 NSRange range = [str rangeOfString:@"height"]; //NSRange range = NSMakeRange(7, 3); [str replaceCharactersInRange:range withString:@"no"]; // 插入字符串 [str insertString:@"abc" atIndex:2]; // 删除字符串 range = [str rangeOfString:@"age"]; [str deleteCharactersInRange:range]; NSLog(@"%@", str); // 释放对象 [str release]; }
相关文章推荐
- Objective-C:Foundation框架-常用类-NSString全解
- objective-c语言_内存管理
- Objective-C:Block
- Objective-C:Category
- Objective-C:@property参数详解
- Convert InputStream to JSONObject
- ArcEngine 无法将类型为"Systerm._ComObject"的对象强制转换为类型******
- ogg启动报错libnnz11.so: cannot open shared object file
- objective-c 的分类与扩展
- iOS Objective-C Runtime(-)消息机制
- [New learn]讲解Objective-c的block知识
- cell的重用机制
- Objective-C非正式协议与正式协议
- Android属性动画完全解析(中),ValueAnimator和ObjectAnimator的高级用法
- Volley StringRequest和JSONObjectRequest使用几个细节
- org.objectweb.asm.ClassWriter.<init>(I)V和org.objectweb.asm.ClassWriter.<init>(Z)V
- Guava使用笔记系列之Objects …
- JSON,XML,JavaObject对象互相转换…
- object is not an instance of dec…
- could not load any Objective-C class information. This will significantly reduce the quality of type