1、声明一个字符串常量
NSString *str = @“snms";
2、通过一个已知的字符串生成一个字符串常量
NSString *str2 = [ [NSString alloc] initWithString:str ]
3、用一个c语言的字符串,生成一个oc字符串
NSString *str3 = [ [NSString alloc] initWithUTF8String:"hello snms" ]
4、拼接字符串
NSString *str4 = [[ NSString alloc] initWithFormat:@"hello %c ,well come to object-C %@","snms",@"world!"]
结果:str4 = hello snms ,well come to object-C world!
------------以上是对象方法【-方法】--------------
------------以下是类方法 【+方法】--------------
对象需要实例化,分配内存,而类不需要,所有去掉对象方法中的alloc;
1、通过一个已知的字符串生成一个字符串常量
NSString *str2 = [ [NSString initWithString:str ]
2、用一个c语言的字符串,生成一个oc字符串
NSString *str3 = [ [NSString initWithUTF8String:"hello snms" ]
3、拼接字符串
NSString *str4 = [[ NSString initWithFormat:@"hello %c ,well come to object-C %@","snms",@"world!"]
结果:str4 = hello snms ,well come to object-C world!
------------以下是NSString的一些方法--------------
1、判断两个字符串是否相等
BOOL ret = [ str1 isEqualToString:str2]
相等:返回1,反之0
2、比较两个字符串大小
NSComparisonResult result = [str compare str2];
if(result == NSOrderedAscending){
说明是升序
}else if(result == NSOrderedDescending){
说明是降序
}else if (result == NSOrderedSame){
说明相等
}
3、截取字符串
NSString *snms = [str substringToIndex:6]
//从第0位开始向后截取字符串,得到新的字符串,原字符串不变;
//6表示截取到第六位,不包含第六位,从0位开始开始;
NSString *snms = [str substringFromIndex:6]
//从哪里开始向后截取字符串,得到新的字符串,原字符串不变;
//6表示从第六位开始,包括第六位,截取后面的所有字符;
NSString *snms = [str substringWithRange:NSMakeRange(6,2)]
//指定范围截取字符串,得到新的字符串,原字符串不变;
//6表示从第六位开始(包括第六位),向后截取2位,从0位开始;
4、判断字符串2在字符串1中出现的位置范围
NSRange range = [str1 rangeOfString:str2];
//得到的结果是个结构体,结构体是需要拆开进行打印,否则打印出的就是null
NSLog(@"location is %d,length is %zd",range.location,range.length)
//结果:location is 0,length is 5 等等,如果length=0说明字符串2在字符串1中没有出现过;