OC --(4)--NSString、NSArray、NSNumber、使用苹果帮助文档、值对象
BOOL 类型用 %d 输出
NSRange range={11,7};//结构体赋值用{}
NSMakeRange(11, 7); //快速创建的方法
1.NSString
initWithFormat:方法 通过给定格式化字符串 复制给字符串对象赋值
stringWithFormat: 方法其实内部就是 alloc+initWithFormat:
NSString *str2=[NSString stringWithFormat:@"chu cuo le "];
2.获取长度
NSInteger length=str.length;
NSLog(@"%ld",length);
3.变成大写
NSString *uppstr=[str uppercaseString];
4.变成小写
NSString *lowwstr=[uppstr lowercaseString];
NSLog(@"%@, %@",uppstr,lowwstr);
5.判定字符串开头
BOOL isBegin=[str hasPrefix:@"http"];
BOOL isEnd=[str hasSuffix:@"com"];
7.拼接
NSString *appendStr=[str stringByAppendingFormat:@".cn"];
8.替换 !!!!替换的是字符串 不是字符 后面的字符串 替换前面的字符串
NSString *replaceStr=[str stringByReplacingOccurrencesOfString:@"w" withString:@"mm"];
9.比较
NSInteger result=[@"aa" compare:@"bb"];
10.判断相等
BOOL isEqual=[@"ab" isEqualToString:@"ab"];
11.截取 // 子字符串
substringFromIndex: 从给定下标开始截取到指定字符串(包含当前下标)
NSString *subStr1=[str substringFromIndex:11];
substringToIndex: 从开始截取到给定下标(不包含当前下标);
NSString *subStr2=[str substringToIndex:11];
//OC中提供了很多快速创建结构体的方法NSMake+结构体名字(NSMakeRange(,))
NSRange range={11,7};//结构体赋值用{} ????
NSString *subStr3=[str substringWithRange:NSMakeRange(11, 7)];
14.获取字符串范围
NSRange range=[str rangeOfString:@"www"];
NSLog(@"%ld,%ld",range.length,range.location);
//将标量 range转化为字符串对象
NSString *rangeStr=NSStringFromRange(range);//!!!!!!!!!!
15.将基本数据类型 转化为字符串对象
NSString *intStr=[[NSString alloc]initWithFormat:@"%d",10];
对于 NSString对象来说 是不可变的 不管是拼接 替换 截取还是大小写转换都是对其副本进行操作,其本身是不变的;
二. NSMutableString
NSMutableString *str=[[NSMutableString alloc]initWithFormat:@"love yangYing"];
//插入
[str insertString:@"jinPeng " atIndex:0];
//拼接
[str appendFormat:@" and haiYang"];
//删除
[str deleteCharactersInRange:NSMakeRange(13, 13)];
//重置
[str setString:@"....."];
//替换
[str replaceCharactersInRange:(NSRange*) withString:(NSString*)]; 将某个范围替换为 /..
NSArray
initWithObjects:方法需要传入多个对象,这些对象之间" , "隔开最后以nil结尾 @[stu1,stu2,stu3];
!!!! nil 之后的对象不在存入数组
NSArray *array=
[[NSArray alloc]initWithObjects:apple,meizu,xiaomi, nil];
//通过下标找到对象
NSString *who=[array objectAtIndex:2];
//通过对象找到下标 只会找到第一个符合对象的下标 并返回
NSInteger index=[array indexOfObject:meizu];
NSInteger count=[array count];//个数
//排序
NSArray *sortedArr= [array sortedArrayUsingSelector:@selector(compare:)];
2.可变数组
//NSMutableArray
NSMutableArray *mutableArray=[[NSMutableArray alloc]initWithObjects:apple,xiaomi,meizu, nil];
//添加
[mutableArray addObject:xiaomi];
//删除 removeObjectAtIndex
[mutableArray removeObjectAtIndex:3];
//removeObject: 会将符合条件的对象全部删除
[mutableArray removeObject:meizu];
//交换 exchange
[mutableArray exchangeObjectAtIndex:0 withObjectAtIndex:1];
//排序
[mutableArray sortUsingSelector:@selector(compare:)];
一. NSNubmer
//整形转化为 NSNumber 对象
NSNumber *intNum=[NSNumber numberWithInt:10];
//NSNumber 对象转化为 整形
int a =[intNum intValue];
/NSValue将标量转化为对象类型
//一般使用便利构造器 valueWith+对应的标量名字
NSValue *rangeValue=[NSValue valueWithRange:NSMakeRange(10, 5)];
NSLog(@"%@",rangeValue);
//将值对象转化为标量
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。