前言:Objective-C里核心的处理字符串的类就是NSString和NSMutableString这两个类,这两个类完成了Objective-C中字符串大部分功能的处理。这两个类的最主要的区别是NSString创建赋值后不能动态修改长度和内容,除非重新赋值。而NSMutableString类似于链表,在创建赋值后可以进行修改长度,插入,删除等操作。
1.创建字符串
创建常量字符串(最常用)
// 创建常量字符串,字符串存储在内存常量区
NSString*constantString=@”this is a constant string!”;
使用类方法创建字符串
// 创建一个空的不可变字符串,永远为空
NSString*string1=[NSStringstring];
// 用C字符串创建OC字符串对象,也就是将C字符串转化为OC字符串
// encoding: 表示字符编码格式(凡是可能用到中文,就用NSUTF8StringEncoding)
NSString*string2=[NSStringstringWithCString:”123″encoding:NSUTF8StringEncoding];
// 同上
NSString*string3=[NSStringstringWithUTF8String:”123″];
// 使用格式化字符串方式创建OC字符串对象
NSString*string4=[NSStringstringWithFormat:@”123″];
// 将OC字符串转化为C字符串
constchar*cString=[string2 UTF8String];
以上几种初始化字符串的方法比较常用,其他还有一些类方法可以从文档中查找,这里不一一列举了。
使用对象方法创建字符串
// 创建一个空的不可变字符串,永远为空
NSString*objectStr1=[[NSStringalloc]init];
// 用C字符串创建OC字符串对象,也就是将C字符串转化为OC字符串
NSString*objectStr2=[[NSStringalloc]initWithCString:”123″encoding:NSUTF8StringEncoding];
// 同上
NSString*objectStr3=[[NSStringalloc]initWithUTF8String:”123″];
// 使用格式化字符串方式创建OC字符串对象
NSString*objectStr4=[[NSStringalloc]initWithFormat:@”123″];
对象方法创建字符串与类方法类似,平时使用的并不是很多,用类方法更方便,文档中也有其他一些方法,有兴趣的可以自行研究。