002-可变字符串(NSMutableString)

来源:互联网 发布:淘宝c店运营 编辑:程序博客网 时间:2024/05/16 00:54
NSString类是不可变的类,即一旦NSString对象被创建,包含在这个对象中的字符序列是不可改变的,直至这个对象被销毁。
NSMutableString对象则代表一个字符序列可变的字符串,而且NSMutableString是NSString的子类,NSString类所包含的方法,NSMutableString都可直接使用,NSMutableString对象也可直接当成NSString对象使用。


- (void)appendString:(NSString *)aString
//在一个字符串后面添加固定的字符串,新生成的字符串还保存在原字符串的地址处。

- (void)appendFormat:(NSString *)format...
//在字符串后添加带变量的字符串

- (void)insertString:(NSString *)aString atIndex:(NSUInteger)anIndex
//在指定位置插入字符串

- (void)deleteCharactersInRange:(NSRange)aRange
//删除某个范围之间的字符串

- (void)replaceCharactersInRange:(NSRange)aRange withString:(NSString *)aString

//用制定字符串替换某个区间的字符串

#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) {    @autoreleasepool {        NSString* book = @"<<crazy iOS book>>";        //创建一个NSMutableString对象        NSMutableString* str = [NSMutableString stringWithString: @"Hello"];        NSLog(@"现在的地址为:%p", str);                //追加固定字符串        //字符串所包含的字符序列本身发生了改变,因此无须重新赋值        [str appendString: @",iOS!"];        NSLog(@"现在的地址为:%p", str);        NSLog(@"%@", str);                        //追加带变量的字符串        //字符串所包含的字符序列本身发生了改变,因此无须重新赋值        [str appendFormat: @"%@是一本不错的图书", book];        NSLog(@"%@", str);                //在指定位置插入字符串        //字符串所包含的字符序列本身发生了改变,因此无须重新赋值        [str insertString: @"fkit.org" atIndex: 6];        NSLog(@"%@", str);                //删除从位置开始往后的12个字符        [str deleteCharactersInRange: NSMakeRange(6, 12)];        NSLog(@"%@", str);                //将从位置6到位置9的字符串替换成objective-c        [str replaceCharactersInRange: NSMakeRange(6, 9) withString: @"objective-c"];        NSLog(@"%@", str);            }    return 0;}

运行结果:


0 0
原创粉丝点击