进入苹果帮助文档的方法
1、shift+command+0
2、alt+鼠标左键,弹出的页面中,点击最下面的相关类的文档
文档中基本的信息:
Inherits from 继承关系
Conforms to 遵循什么协议
Framework 属于什么框架
Availability 什么时候可以使用
Declared in 声明在什么头文件里
Related documents 相关文件
Sample code 示例代码
OC,C字符串的互相转换
char *s = “Hello Object-C”;
NSString *str = @“Hello”;
C->OC
NSString *str1 = [NSString stringWithUTF8String:s];
NSLog(@“str1 = %@”,str1);
OC->C
NSLog(@“str2 = %s”,[str UTF8String]);
不可变字符串:NSString 创建之后不能改变内容和长度
创建一个字符串对象:
初始化方法: NSString *string1 = [[NSString alloc] initWithFormat:@"黑凤梅's age is %d",30];
NSLog(@"string1 is %@",string1); NSString *string2 = [[NSString alloc] initWithFormat:@"黑凤梅's gender is %@",@"女" ];
NSLog(@"string2 is %@",string2); initWithFormat:格式化,可接占位符
另一种方法字面量: NSString *string = @"黑凤梅";
NSLog(@"string is %@",string);
NSString常用的方法
①获取字符串长度 length 无符号的长整型 unsigned long length = [str length];// 或者用点语法 string.length NSLog(@"str length is %lu",length);// 空格、汉字都占一个位,OC中一个位,两个字节 字符串的长度:在OC中不计算\0。
②获取字符串中某单个字符(利用下标characherAtIndex获取)注意不要越界
C语言中,字符创是由char(ASCII)字符组成
OC中,字符串是由unichar(Unicode)字符组成 unichar character = [string2 characterAtIndex:0]; NSLog(@"character is %C",character);// %C 可打印汉字
获取指定字符串的位置,rangOfString 输出两个值,下标location和长度length,都是长整型
③判断两个字符串的内容是否相同 isEqualToString,返回的是一个BOOL值,想等返回1,不相等返回0 BOOL isEqual = [string2 isEqualToString:string1]; NSLog(@"isEqual is %d",isEqual);
④比较两个字符串 compare,内部采用枚举NSComparisonResult,返回的是整型,返回-1,升序排列;返回0,相等;返回1,降序排列。
代码: NSComparisonResult result = [@"fsf" compare:@"sfsf"]; NSLog(@"result is %ld",result);
⑤截取字符串
1、substringFromIndex:从指定位置的下标开始向后截取字符串,一直到结束 NSString *newString = [@“strawberry” substringFromIndex:2]; NSLog(@"newString is %@",newString);//结果为:rawberry 2、substringToIndex:从0开始截取到n-1下标的内容 NSString *newString1 = [@"strawberry" substringToIndex:4]; NSLog(@"newString1 is %@",newString1);//结果为:stra
3、substringWithRange:获取指定范围内的字符串
取范围用NSMakeRange()函数,第一参数表示从该下标开始,第二个参数表示取几个字符 NSString *newString2 = [@"strawberry" substringWithRange:NSMakeRange(3, 5)]; NSLog(@"newString2 is %@",newString2);//结果为:awber
⑥格式化拼接字符串 stringByAppendingFormat NSString *newStr = [@"hehe," stringByAppendingFormat:@" baobao %d",235]; NSLog(@"newStr is %@",newStr);//结果为:hehe,baobao235 拼接已知字符串 stringByAppendingString NSString *newStr1 = [@"hehe" stringByAppendingString:@" baobao"]; NSLog(@"newStr1 is %@",newStr1);//结果为:hehebaobao
⑦替换字符串 stringByReplacingCharactersInRange:NSMakeRange() withString: 第一个参数写需要代替的字符串的范围,第二个写替代之后的字符串 NSString *news = [string2 stringByReplacingCharactersInRange:NSMakeRange(length - 1 , 1) withString:@"男的"]; NSLog(@"news is %@",news); stringByReplacingOccurrencesOfString: withString: 前一个是需要代替的字符串,第二个写代替之后的字符串 NSString *news1 = [string2 stringByReplacingOccurrencesOfString:@"女" withString:@"男的"]; NSLog(@"news2 is %@",news1);
⑧字符串转换为int型 intValue(还有布尔型boolValue,浮点型floatValue等) NSString *numberStr = @"t"; BOOL number = [numberStr boolValue]; NSLog(@"%d",number);