【OC学习-17】NSNumber和NSString介绍以及一些操作方法
2014-09-05 13:11
316 查看
(1)NSNumber数字对象:虽然有int和float这些基本数字变量,但终究不是对象,所以不能接受消息(就是被调用),所以需要数字对象
(2)NSString字符串对象
还有一些字符串判断,BOOL value1=[str1 hasPrefix:@"www"];判断是否以www开头,值是YES或NO。同理,BOOL value2=[str1 hasSuffix:@".png"];判断以什么结尾。
使用==判断两个字符串是否相等,其实是判断他们的地址是否相同。所以我们一般判断是用isEqualToString这些方法。我们在iOS开发中用if判断两个指针地址是否相同,用得就是==或者!=,而不是isEqualToString。
还有一些比较强悍的方法,利用替换可以实现替换、删除、插入等功能,如方法stringByReplacingOccurrencesOfString。
还有把内容写入到文件的方法wirteToFile。从文件中读取内容的方法stringWithContentOfFile。这2个方法有个&error参数,如果正常,则error==nil,否则会吧错误信息记录到error中。所以我们可以利用error是否等于nil做判断是否读写成功。
总结:其实,我们只需要了解,不需要全部记忆,因为在xcode写函数的时候是有提示的。
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { //格式和NSString创建类似,只是后面的初始化函数要有针对性,这是框架里面内置的 NSNumber *intNumber=[[NSNumber alloc]initWithInt:18]; //这一条和下一条等价<p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo;"><span style="color: #703daa"><span style="white-space:pre"> </span> NSNumber</span> *int111111=[<span style="color: #703daa">NSNumber</span> <span style="color: #3d1d81">numberWithInt</span>:<span style="color: #272ad8">18</span>];</p> NSNumber *floatNumber=[[NSNumber alloc]initWithFloat:18.22]; NSLog(@"%@",intNumber); NSLog(@"%@",floatNumber); //也可以把数字对象转换成基本数值型,intvalue这些也是内置的方法 int int1=[intNumber intValue]; float float1=[floatNumber floatValue]; NSLog(@"%d",int1); NSLog(@"%.1f",float1); } return 0; }
(2)NSString字符串对象
//创建字符串常量对象 NSString *str1=@"hello"; //创建空字符串对象 NSString *str2=[[NSString alloc]init]; NSString *str3=[NSString string]; //快速创建一个字符串对象 NSString *str4=[[NSString alloc]initWithString:@"andy"]; NSString *str5=[NSString stringWithString:@"tom"]; //创建格式化的字符串对象 NSString *str6=[[NSString alloc]initWithFormat:@"%d",10]; NSString *str7=[NSString stringWithFormat:@".1f",10.8]; //比较两个参数的内容值是否相同 if ([str1 isEqualToString:str2]) ... //判断两个对象变量是否是同一个,即指向同一个地址 if (str1==str2) ... //比较大小 if ([str1 caseInsensitiveCompare:str2]) //字符串长度 NSLog(@"%d",[str1 length]); //字符串大写、小写、首字母大写 NSLog(@"%@",[str1 uppercaseString]); NSLog(@"%@",[str1 lowercaseString]); NSLog(@"%@",[str1 capitalizedString]); //分割成数组,以空格分隔 NSArray *arr=str1 componentsSeparatedByString:@" "; //剪切字符串,从开始到2(不包含2);从2开始(包含2)到最后 NSString * str8=[str1 substringToIndex:2]; NSString * str9=[str1 substringFromIndex:2]; NSRange range={4,2};//从什么范围开始剪切,和下面是等价的,range是内置的方法 range.location=4; range.length=2; NSString *str10=[str1 substringWithRange:range];
</pre><pre name="code" class="objc">//把两个字符连接 NSString *str11=[str1 stringByAppendingString:str2]; NSString *str12=[str1 stringByAppendingFormat:@"",str2]; NSString *str13=[[NSString alloc]initWithFormat:@"%@ and %@",str1,str2]; NSRange range2=[str1 rangeOfString:@"hello"];
//NSMutableString创建的对象是可变变量,可以增减替换操作 NSMutableString *mutstring1=[[NSMutableString alloc]initWithFormat:@"hello"]; [mutstring1 insertString:@"world" atIndex:5]; [mutstring1 replaceCharactersInRange:(0,3) withString:@"eee"]; [mutstring1 deleteCharactersInRange:(0,3)];
还有一些字符串判断,BOOL value1=[str1 hasPrefix:@"www"];判断是否以www开头,值是YES或NO。同理,BOOL value2=[str1 hasSuffix:@".png"];判断以什么结尾。
使用==判断两个字符串是否相等,其实是判断他们的地址是否相同。所以我们一般判断是用isEqualToString这些方法。我们在iOS开发中用if判断两个指针地址是否相同,用得就是==或者!=,而不是isEqualToString。
还有一些比较强悍的方法,利用替换可以实现替换、删除、插入等功能,如方法stringByReplacingOccurrencesOfString。
还有把内容写入到文件的方法wirteToFile。从文件中读取内容的方法stringWithContentOfFile。这2个方法有个&error参数,如果正常,则error==nil,否则会吧错误信息记录到error中。所以我们可以利用error是否等于nil做判断是否读写成功。
总结:其实,我们只需要了解,不需要全部记忆,因为在xcode写函数的时候是有提示的。
相关文章推荐
- OC基础:NSString NSNumber 分类: ios学习 OC 2015-06-17 17:55 77人阅读 评论(0) 收藏
- 黑马程序员---OC学习笔记之NSNumber和NSValue的介绍和使用
- OC基础:NSString NSNumber 如何学习苹果帮助文档
- Data block 的物理结构介绍以及一些参数的学习
- 1 kinect for windows(k4w) sdk介绍与环境配置以及k4w开发的一些学习资料
- OC学习_第四天 NSString、NSArray、NSNumber、使用苹果帮助文档、值对象
- 【OC加强】枚举介绍、数组的排序、对象的排序、如何利用block排序以及一些数据类型知识
- 【OC 第3课】NSString ,NSMutableString用法以及一些常用方法
- oc语言学习之基础知识点介绍(四):方法的重写、多态以及self、super的介绍
- Apache Ant学习总结(一):Ant自动化脚本入门以及一些常用命令介绍
- oc语言学习之基础知识点介绍(三):类方法、封装以及继承的介绍
- OC学习 第五章 NSString和NSMutablestring的一些常用方法
- 多线程学习笔记六-------------线程的消亡以及一些常用方法的介绍
- oc基础学习NSString的创建和一些常用的方法
- 【OC学习-18】NSArray的初始化以及常用数组操作方法简单归纳
- 整理一些Markov Random Field以及Graph Model的基础学习资料
- 菜鸟学习linux笔记与练习-----第二天。一些基本命令以及初级网络配置
- 菜鸟学习linux笔记与练习-----第一天。一些初级命令以及基本用户管理
- 学习 JpGraph心得以及一些常见问题解决
- 一些C++连接,以及个人的C++学习总结。