淘先锋技术网
首页
1
2
3
4
5
6
7
【字符串的比较 Objective-C语言】
一、回忆一下,C语言的字符串比较函数strcmp,是比较ASCII码,对不对
1.那我们的OC字符串,是不是也可以比ASCII码呢
例如:
NSString *str1 =@“jack”;
NSString *str2 = @“rose”;
字符串比较的第一种方式,调用字符串对象的compare方法
- (NSComparisonResult)compare:(NSString *)string;
[str1 compare:str2];
这个时候,就比较str1和str2的大小
返回值什么类型的,是不是NSComparisonResult啊
这是个什么类型
管它什么类型
它返回的是这个类型,你就用这个类型接一下,不就可以了嘛
NSComparisonResult res = [str1 compare:str2];
例如,随便调一个方法
str2 addObserver:(nonnull NSObject *) forKeyPath:(nonnull NSString *) options:(NSKeyValueObservingOptions) context:(nullable void *)
第一个参数:(nonnull NSObject *),是不是给个任意的NSObject就可以了
第二个参数:(nonnull NSString *) ,是不是给个字符串就可以了
第三个参数:(NSKeyValueObservingOptions),你没见过这个类型对不对,按住它点右键,点进去,走,
typedef NS_OPTIONS(NSUInteger,NSKeyValueObservingOptions){
NSKeyValueObservingOptionNew = 0x01,
NSKeyVauleObservingOptionOld = 0x02,
NSKeyVauleObservingOptionInitial NS_ENUM_AVAILABlE(10_5,2_0) = 0x04,
NSKeyVauleObservingOptionPrior NS_ENUM_AVAILABlE(10_5,2_0) = 0x08
};
是不是是个枚举
所以你在调用别人的方法的时候啊,人家参数是什么类型,你就给个什么类型就可以了
返回值是什么,你就拿什么返回值去接就可以了