2015-4-20_OC

来源:互联网 发布:linux oracle em打不开 编辑:程序博客网 时间:2024/05/17 22:31


以下两行都是代码表示声明一个字符串

NSString *str=@”hello”;

NSString *str=[NSString stringWithFormat:@”hello,my name is %@”,@”mike”];

以下三行是表示以1为起始,长度为3的范围。

NSRange rg={1,3};

NSRange rg=[NSRange new]; rg.location=1;rg.length=3;

NSRange rg= NSMakeRange(1,3);

字符串对应的方法

length

NSString *str1 = @"字符串内容";

NSString *str2 = [NSString new];

str2=@"字符串内容";

str1和str2的值和地址都相等 要想不相等就可以写成

NSString *str2 = [NSString stringWithFormat:@"字符串内容"];

这样地址就不相等,值相等了

compare 方法 比较两个字符串的大小,和c与语言的strcmp是一样的效果,从第一个字符开始判断ascii的值的大小,只要同一个位置的两个ascii的值不一样的时候就是返回比较的结果。1 0 -1三个枚举值

str1=@"hello30";

str2=@"hello4";

NSLog(@"%d",[str1 compare:str2]);//-1 表示比较每个的ascii的大小

NSLog(@"%d" ,[str1 compare:str2 options:NSNumericSearch] );// 1 比较数字的大小

Str以什么开始(hasPrefix) 以什么结束方法(hasSuffix)

int a =[@"23" intValue];//转化成功

int a =[@"a0" intValue];//转化失败:只支持10进制

unsigned int rd;

[[NSScanner scannerWithString:@"a0"] scanHexInt:&rd];//160转换成功 16进制转换成十进制

字符串替换

str1=@"hello world";

str2=@"abc";

str1 = [str1 stringByReplacingOccurrencesOfString:@"hello" withString:str2];//str1 是

abc world;

字符串分割函数,分割的结果是一个数组

str1=@”123:456:789”;

str1=@"123:456:789";

NSArray*arr=

[str1 componentsSeparatedByString:@":"];

NSArray:增加,指定位置增加,指定位置删除

排序

NSArray *arr3 = @[stu1,stu2,stu3];

NSArray *res = [arr3 sortedArrayUsingSelector:@selector(studentCompare:)];

Student.m文件

//自定义排序

-(NSComparisonResult) studentCompare:(Student *) s

{

if(self.score<s.score)

{

return NSOrderedAscending;//-1

}

else if (self.score==s.score)

{

return NSOrderedSame;//0

}

else

{

return NSOrderedDescending;//1

}

}

0 0
原创粉丝点击