/**
比对iOS版本号字符串大小
@param versionA 只能是三段以内,英文字符"."分隔的,每段必须是非负整数的版本字符串
@param versionB 只能是三段以内,英文字符"."分隔的,每段必须是非负整数的版本字符串
@return 从A到B,结果 -1 升序, 0 相等, 1降序
*/
- (NSComparisonResult)versionNumberA:(NSString *)versionA compareVersionNumberB:(NSString *)versionB {
NSArray *stringsA = [versionA componentsSeparatedByString:@"."];
NSArray *stringsB = [versionB componentsSeparatedByString:@"."];
NSComparisonResult result = NSOrderedSame;
for (int i = 0; i < 3; i++) {
NSInteger numberA = 0;
NSInteger numberB = 0;
if (i < stringsA.count) {
numberA = [(NSString *)stringsA[i] integerValue];
}
if (i < stringsB.count) {
numberB = [(NSString *)stringsB[i] integerValue];
}
if (numberA > numberB) {
result = NSOrderedDescending;
break;
}else if (numberA < numberB){
result = NSOrderedAscending;
break;
}
}
return result;
}
网友评论