比较格式为00:00:00的字符串

时间:2014-07-25 23:13:59

标签: objective-c

我正在创建代表公路竞赛时间的字符串,而我正在尝试排序并将其分解以查看哪个字符串是最快的时间。这样做的最佳算法或方法是什么?我已尝试componentsSeparatedByString@":"以及将时间格式化为NSDate时间,但都未成功完成。有什么想法吗?

2 个答案:

答案 0 :(得分:1)

没关系,我发现NSComparisonResult工作,并将我的最佳时间与当前时间进行比较,并检查NSOrderDescending是否真的有效。

答案 1 :(得分:1)

如果我理解你的问题; 假设时间字符串以小时为单位:分钟:秒可以使用

NSArray *timeComponents = NSArraycomponentsSeparatedByString:@":" 

您将从阵列中获得:

NSString *hour = timeComponents[0];
NSString *minutes = timeComponents[1];
NSString *seconds = timeComponents[2];

我的建议是将前两个转换为秒:

double hourInSeconds = hour.doubleValue * 3600;
double minutesInSeconds = minutes.doubleValue * 60;

将所有内容添加到一起:

double allInSeconds = hourInSeconds + minutesInSeconds + seconds.doubleValue

您的比较也越多,值越小,时间越快。

希望它有所帮助。