NSString的个人总结
来源:互联网 发布:java数据库编程db 编辑:程序博客网 时间:2024/05/19 17:10
NSString 用法及其总结
引言:本文是本人的自我归纳和总结,如有不正确之处,希望各位能够指出错误并给出指导,谢谢!
- 1.概念
- 2.初始化
- 3.获取(截取)字符串
- 4.拼接字符串
- 5.替换字符串
- 6.比较字符串
- 7.分割字符串
- 8.字符串大小写转换
- 9.拓展
1.概念
NSString : OC语言中使用的字符串写法,是Foundation框架下的类,在iOS 2.0及之后都在使用,是不可改变的字符串。
2.初始化
常规的初始化方法:
NSString *str1 = [[NSString alloc]initWithString:@"今天天气真不错"]; NSString *str2 = @"大家一起出去冬游吧"; //以字符串来初始化一个字符串 NSString *str3 = [NSString stringWithString:str2];
字符串的万能方法,常用于字符串的拼接
NSString *string = [NSString stringWithFormat:@"%@, 我觉得睡觉比较好", str1, nil];
3.获取(截取)字符串
1.substringFromIndex:(NSInteger) :从索引位置开始(包括当前位置),截取到该字符结束
2.substringToIndex:(NSInteger) :从字符串开头截取,知道索引位置结束(不包括输入位置)
3.substringWithRange:(NSRange) :通过范围来截取子串,从location开始(包含)往后截取length个,注意小心越界问题
4.length :获取字符串的长度,返回一个NSInteger类型的值
- 注意:NSString中使用的方法都需要一个新的字符串来接受输出的字符串,并不会改变字符串本身,因为NSString类型的字符串是不变的。下面介绍的方法亦同。
//截取字符串代码实现: NSString *string = @"today study OC"; NSString *str1 = [string substringFromIndex:3]; NSLog(@"%@", str1);//输出结果为:"ay student OC" NSString *str2 = [string substringToIndex:3]; NSLog(@"%@", str2);//输出结果为:"tod" NSString *str3 = [string substringWithRange:NSMakeRange(3, 5)]; NSLog(@"%@", str3);//输出结果为:"ay st" NSLog(@"%ld", string.length);//输出结果为:16
4.拼接字符串
1.stringWithFormat:(NSString *), … :字符串的万能用法
2.string stringByAppendingFormat:(NSString *), … :参数用法和万能用法相同
3.string stringByAppendingString:(NSString *):以字符串来拼接字符串
//拼接字符串代码实现 NSString *string = @"paly"; NSString *newString = [string stringByAppendingString:@"Game"]; NSLog(@"%@", newString);//输出:“palyGame”
※ 拓展:
1.stringByAppendingPathComponent:(NSString *) :是在字符串之后添加“/”号,在拼接上字符。 2.stringByAppendingPathExtension:(NSString *) :这个是给字符串添加后缀的方法。
//引用上面newStringnewString = [newString stringByAppendingPathComponent:@"hello"];NSLog(@"%@", newString);//输出:“palyGame/hello”newString = [newString stringByAppendingPathExtension:@"png"];NSLog(@"%@", newString);//输出:“palyGame/hello.png”
5.替换字符串
1.stringByReplacingOccurrencesOfString:(NSString*) withString:(NSString*) :替换字符串内的固定内容
2.stringByReplacingCharactersInRange:(NSRange) withString:(NSString *) :替换字符串内的固定位置
//代码实现NSString *string = @"今天好累,今天还下雨了";NSString *newStr = [string stringByReplacingOccurrencesOfString:@"今天" withString:@"昨天"];NSLog(@"%@",newStr);//输出:“昨天好累,昨天还下雨了”NSString *newStr2 = [string stringByReplacingCharactersInRange:NSMakeRange(1, 3) withString:@"不累"];//包含输入的范围值NSLog(@"%@", newStr2);//输出:“今不累,今天还下雨了”
※ 拓展:
stringByReplacingOccurrencesOfString:(NSString *) withString:(NSString *) options:(NSStringCompareOptions) range:(NSRange) 通过options输入判断条件(NSStringCompareOptions对应的条件),来替换输入范围的值。
6.比较字符串
- 注意:两个字符串进行比较的时候,不能直接判断它们是否相等,需要使用比较的方法来进行两个字符串的对比
1.isEqualTo:(id) 比较两个对象是否相等,返回值为一个BOOL类型的值,相等为YES,不相等为NO。
2.compare:(NSString *) 比较两个字符串,从头开始,相同则进行下一个,返回值为一个NSInteger类型的值(-1、0、1),为-1,说明后面的大;为0,说明相等;为1,说明前面大。
3.hasPrefix:(NSString *) 判断字符串以什么开头,返回一个BOOL类型的值,等为YES,不等为NO。
4.hasSuffix:(NSString *) 判断字符串以什么结尾,返回一个BOOL类型的值,同上。
5.containsString:(NSString *) 查看字符串中是否包含输入的字符串,也是返回一个BOOL类型的值。
//比较字符串代码实现NSString *strOne = @"比较字符串";NSString *strTwo = @"字符串";NSLog(@"%d", [strOne isEqualTo:strTwo]);//输出结果为:“0”NSLog(@"%ld", [strTwo compare:strOne]);//输出结果为:“-1”NSLog(@"%d", [strOne hasPrefix:@"字"]);//输出结果为:“0”NSLog(@"%d", [strTwo hasSuffix:@"串"]);//输出结果为:“1”NSLog(@"%d", [strOne containsString:strTwo]);//输出结果为:“1”
7.分割字符串
componentsSeparatedByString:(NSString *) 遇到输入的字符串,进行分割,并且消除输入的字符串。返回值是一个数组。
//分割字符串代码实现NSString *string = @"20#分割#字符串";NSArray *array = [string componentsSeparatedByString:@"#"];for (NSString *str in array) { NSLog(@"%@", str);}//输出结果分三次,分别为:“20”,“分割”,“字符串”
※ 拓展:
componentsSeparatedByCharactersInSet:(NSCharacterSet *)遇到一个字符集内包含的元素便进行分割。
8.字符串大小写转换
1.capitalizedString 将单词的首字母转换为字母大写,其余的转换为小写
2.lowercaseString 将字符串中所有的字母转化为小写
3.uppercaseString 将字符串中所有的字母转化为大写
//字符串大小写转换代码实现NSString *string = @"Today tHeWeathEr IS rEally gOOd";NSLog(@"%@", [string capitalizedString]);//输出结果为:“Today Theweather Is Really Good”NSLog(@"%@", [string lowercaseString]);//输出结果为:“today theweather is really good”NSLog(@"%@", [string uppercaseString]);//输出结果为:“TODAY THEWEATHER IS REALLY GOOD”
9.拓展
1.NSString 赋值为文件路径,通过方法获取文件内容
例如下方法:
stringWithContentsOfFile: (NSString * ) encoding:(NSStringEncoding) error:(NSError *__autoreleasing *)
参数说明:1.为一个路径、2.编码格式、3.错误信息
//取得一个.txt文本的内容NSString *path = @"/Users/dllo/Desktop/SSQ/SSQ/area.txt";NSString *str = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
-(NSString*)lowercaseString 回转换为小写的字符串
-(NSString*)uppercaseString 返回转换为大写的字符串
-(const char*)UTF8String 返回UTF8编码格式的字符串
-(double)doubleValue 返回转换为double 类型的字符串
-(float)floatValue 返回转换为 float 类型的字符串
-(NSInteger)integerValue 返回转换为 NSInteger 类型的新字符串
-(int)intvalue 返回转换为 int 的字符串注意:这些方法转化的原字符串需要符合转化的条件,不然会输出错误
//返回一个integer类型的字符串NSString *str = @"1231asda";NSLog(@"%ld", [str integerValue]);//输出结果为:“1231”
- NSString的个人总结
- NSString的用法总结
- NSString的方法总结
- iOS NSString 的用法总结
- 个人整理------NSString基础
- 关于NSString使用的一点总结
- OC语言NSString方法的总结(全)
- OC中NSString的常用方法总结
- NSString和NSMutableString的相关总结
- NSString类的一些知识总结
- NSString/NSArray/NSDictionary/NSSet方法的总结
- iOS的NSString常用方法总结
- NSString在工作中常见的用法总结
- 个人的学习总结
- 个人总结的sizeof
- 个人的求职总结
- 2011的个人总结
- sizeof的个人总结
- 进击的KFC:OC(第九天):内存管理初级
- 那些大牛
- 通过android API函数操作数据库
- 搭建SpringMVC项目
- 网络状态监测Reachability的使用
- NSString的个人总结
- 爬爬爬之路:OC语言(十) 内存管理(高级),多态简介
- Android签名有关问题
- 【深入Java虚拟机】之三:类初始化
- http协议_请求数据包_get/post
- DOM文本节点
- display:inline-block是什么意思
- [ubuntu]移动Terminal终端中的TAB标签
- SLua 绑定 Protobuf-Lua (protoc-gen-lua) 在SLua中使用 Protobuf