黑马程序员------foundation字符串_NSString
来源:互联网 发布:淘宝触屏版登录 编辑:程序博客网 时间:2024/06/09 22:31
字符串一般高级语言都有,在java中用String,如果拼接字符串的话StringBuilder效率高些,它会有很多种方法都是在字符串中比较常用的,比如Indexof,lastIndexOf,format,remove,trim,replase,ToUpper,Tolower等。这些在处理字符串中,很方便,不像c的话要自己写方法。
oc中有两种字符串方式NSString不可变字符串和NSMutableString字符串
下面看看NSString提供了那些方法。
compare比较,它返回类型是NSOrderedAscending,NSorderedSame,NSorderedDescending。
isEqualToString判断字符串是否相等。
hasPrefix判断开头字符是否相等,hasSuffix判断结尾字符串是否相等。
componentsSeparatedByString字符串分割
NSString* string1 = @"123"; NSString *string2 = @"123"; BOOL result = [string1 isEqualToString:string2]; if (result) { NSLog(@"字符串相同"); }
NSString* string1 = @"123"; NSString *string2 = @"1234"; BOOL result = [string1 compare:string2]; if (result == NSOrderedSame) { NSLog(@"字符串相同"); }
NSString *nstring = @"1,2,3,4,5"; NSArray *array = [nstring componentsSeparatedByString:@","]; for (int i = 0; i < [array count]; i++) { NSLog(@"string:%@", [array objectAtIndex:i]); }顺带说一下Array转String的方法,NSArray可以屌用方法componetsJoinedByString:@" "(后面跟拼接占位符)
NSString *string1 = @"abc"; NSString *string2 = @"abcdef"; //字符串以开头比较 if([string1 hasPrefix:@"ab"]) { NSLog(@"字符串string1以ab开头"); } //字符串以结尾比较 if([string2 hasSuffix:@"ef"]) { NSLog(@"string2字符串ef拉结尾"); }
NSString有一点相同的字符串,它的地址是一样的。翻译官方说法[[NSString alloc] initWithString:@"123"] 这样写是多余的(黄色那行)
[[NSString alloc] initWithContentsofFiles:@"filename" encoding:NSUTF8StringEncoding error:nil]可以直接用
initWithContentsofFiles方法直接读文件的内容,不得不说很赞。
#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) { @autoreleasepool { NSString *filStr = [[NSString alloc] initWithContentsOfFile:@"/Users/kaiyuan/Documents/projects/testOOP.m" encoding:NSUTF8StringEncoding error:nil]; NSLog(@"%@",filStr); } return 0;}
小练习
<span style="font-size:18px;">//现有如下定义的字符串: NSMutableString * str=@“iphoneAndroid”,能不能对该字符串进行修改,如果能,请输出删除Android后的新字符串。int main(int argc, const char * argv[]) { NSMutableString *str=[NSMutableString stringWithCapacity:2]; [str appendString:@"iphoneAndroid"]; [str deleteCharactersInRange:NSMakeRange(6, 7)]; NSLog(str);}</span>
//取出符串“123-456-789-000”中的数字部分,组成一个新的字符串输出,(提示:可变字符串;返回数组)int main(int argc, const char * argv[]) { NSString *str =@"123-456-789-000"; NSString *newStr = [str stringByReplacingOccurrencesOfString:@"-" withString:@""]; NSLog(@"%@",newStr);}
0 0
- 黑马程序员------foundation字符串_NSString
- 黑马程序员_NSString
- 黑马程序员_Foundation框架02_NSString
- 黑马程序员------foundation字符串_NSMutableString
- 黑马程序员------foundation字符串无序集合,字典
- 黑马程序员--Foundation框架字符串
- 黑马程序员------[Foundation]Foundation框架
- 黑马程序员-Foundation-NSValue
- 黑马程序员-Foundation框架
- 黑马程序员-----Foundation框架
- 黑马程序员(Foundation)
- 黑马程序员---Foundation框架
- 黑马程序员 Foundation框架
- 黑马程序员---Foundation框架
- 黑马程序员---oc Foundation
- 黑马程序员一Foundation
- 【黑马程序员】-Foundation框架
- 黑马程序员--Foundation小结
- Google和facebook如何应用R进行数据挖掘
- 二分查找算法(C++实现)
- 使用ltib
- 下拉放大效果
- 使用CCHttpClient进行cocos2d-x网络编程
- 黑马程序员------foundation字符串_NSString
- 蓝牙不能用了
- 关于java字节的问题,所以说明全在注释里面了,百分之百手敲,注意细节
- R语言学习由浅入深路线图
- HDU 1392 Surround the Trees 凸包的周长
- eclipse中maven配置
- R语言入门基础教程:常用运算函数
- 《剑指offer》面试题6重建二叉树
- quartz框架调度