黑马程序员技术交流社区
标题:
compared一个参数的疑问
[打印本页]
作者:
Abuzzworld
时间:
2015-10-12 10:08
标题:
compared一个参数的疑问
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSString *str = @"ddddd";
NSString *str1 = @"abcBBaaaaa";
NSLog(@"%ld",[str compare:str1 options:NSNumericSearch]);
}
return 0;
}
复制代码
2015-10-12 10:07:33.678 block[988:46230] 1
Program ended with exit code: 0
复制代码
NSNumericSearch参数不是按字符个数比较么,为什么会输出1呢,正确不是应该输出-1么
作者:
布鲁兹老爷
时间:
2015-10-12 10:36
C语言里strcmp如果前面的字符串比后面的大,返回值是1. ddddd字符串比abcBBaaaa大,因为d的ASCII码比a大。OC的没用过这个方法,不太清楚。
作者:
Abuzzworld
时间:
2015-10-12 13:23
{:3_54:}有人能指点下么
作者:
jy00889669
时间:
2015-10-12 15:30
还没有看到那么后面呢。你真快
作者:
lb930430
时间:
2015-10-14 18:01
NSNumericSearch = 64, /* Added in 10.2; Numbers within strings are compared using numeric value, that is, Foo2.txt < Foo7.txt < Foo25.txt; only applies to compare methods, not find */
复制代码
底层的解释是这样的,我测试了一下,是字符串中出现数字的使用的,比较的是字符串中数字的大小
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2