iOS开发OC基础:OC字符串对象NSString对象方法使用基础
学习OC都知道,OC比较好的地方就是封装了很多方法,供开发者直接调用,这是非常方便的。很多方法在系统中都实现了,我们只要直接调用就行了。今天主要是说明字符串对象的一些方法的使用。
下面直接上代码:
#import<Foundation/Foundation.h>intmain(intargc,constchar*argv[]){@autoreleasepool{////创建NSString类型的对象////使用初始化方法initWithFormat:根据一定的字符串格式来初始化字符串对象,将格式串中的内容写入到字符串对象空间内//NSString*str=[[NSStringalloc]initWithFormat:@"iPhone%d%@",a,@"S"];//////使用便利构造器stringWithFormat:方法来快速创建对象,内部进行alloc以及初始化操作,内部通过initWithFormat初始化方法来进行初始化//NSString*str1=[NSStringstringWithFormat:@"lanou%@",@"henan"];//////将c语言的字符串转为OC的字符串对象////初始化方法//NSString*str21=[[NSStringalloc]initWithUTF8String:"ccc"];////便利构造器方法//NSString*str2=[NSStringstringWithUTF8String:"abc"];//NSLog(@"%@",str);//NSLog(@"%lu",(unsignedlong)[str1length]);//NSLog(@"%@,%@",str21,str2);//1.创建一个新的字符串对象,存储“http://www.LANOU3g.com,lanouhenan”NSString*str=[[NSStringalloc]initWithFormat:@"http://www.LANOU3g.com,lanouhenan"];//2.求字符串str的长度NSUIntegerlength=[strlength];NSLog(@"%lu",length);//3.判断字符串是否以指定字符串开始或结束//判断一个网址是否是以http://开头,是否是以.com结尾。BOOLisBegin=[strhasPrefix:@"www"];NSLog(@"%d",isBegin);//判断是否以.com结尾。BOOLisEnd=[strhasSuffix:@".com"];NSLog(@"%d",isEnd);//4.搜索一个指定字符串的范围//经常用来判断指定的字符串在不在str中。//只需根据返回的range的length来判断即可,如果length为0,说明不在str中,如果不为0,则存在。NSRangerange=[strrangeOfString:@"lanou"];//NSLog(@"location:%lu,range:%lu",range.location,range.length);//将一个结构体类型的变量转化为字符串NSLog(@"%@",NSStringFromRange(range));//5.字符串截取(获取子字符串),分割字符串//获取子串.comNSString*subStr1=[strsubstringFromIndex:18];NSLog(@"%@",subStr1);//获取子串http://NSString*subStr3=[strsubstringToIndex:7];NSLog(@"%@",subStr3);//获取子串lanou//NSRangerange2={11,5};//NSMakeRange用来快速创建NSRange变量({})用来赋初值NSString*subStr2=[strsubstringWithRange:NSMakeRange(11,5)];NSLog(@"%@",subStr2);//6.拼接字符串//拼接上henanNSString*newStr=[strstringByAppendingFormat:@"%@",@"henan"];NSLog(@"%@",newStr);//7.替换字符串//将ou替换成xiangNSString*replaceString=[strstringByReplacingOccurrencesOfString:@"ou"withString:@"xiang"];NSLog(@"%@",replaceString);//8.字符串比较NSComparisonResultresult=[@"aa"compare:@"bb"];NSLog(@"%ld",result);//9.字符串和数值类型的转换//将@"5"转为整数//如果字符串前面是空格,则会忽略掉,把空格后面的数字转为整数,如果出现过其它字符之后,又出现了空格,则不会忽略掉NSIntegervalue1=[@"5a2"integerValue];NSLog(@"%ld",value1);//10.大小写转换操作。//(1)全部转化为大写NSString*upperString=[struppercaseString];NSLog(@"%@",upperString);//(2)全部转化为小写NSString*lowerString=[strlowercaseString];NSLog(@"%@",lowerString);//(3)每个单词的首字母转化为大写,其余小写//如何区分是不同的单词//除了52个大小写字母,使用其它的字符来进行间隔,都会识别为不同的单词NSString*cap=[strcapitalizedString];NSLog(@"%@",cap);//对于NSString创建的对象,都是不可变的字符串,不管对该对象做拼接、分割大小写转换、替换、数字转换等操作,都是对该对象的副本进行操作,不会对原字符串做任何的修改。(返回一个新的字符串)//如果想对原字符串进行修改,就要使用NSString的一个子类NSMutableString来创建对象,进行操作,NSMutableString相比于NSString类只是添加了增删改的方法。}return0;}
这是一个完整的OC代码,可以拷贝到工程中直接运行。大家可以看到,main函数中上面的一部分注释掉了,那是NSString的一些初始化的方法和一个便利构造器。
下面的几个方法是一些最长用的方法,基本上其他的都不用,如果有些童鞋有需要,可以查看官方的API文档查看更多的方法。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。