我目前有一个不同时间的数组。这些是用户定义的,每隔30分钟。所以,一个例子可能是:
NSMutableArray *times = [[NSMutableArray alloc] initWithObjects: @"9:30", @"12:00", @"13:30", @"17:00", nil];
此外,不同时间的数量可以从1到5不等。
现在我想找到最接近当前时间的那个。例如,如果现在是11:00,在上面的示例中,它将返回12:00。
这样做的最佳方式是什么?
答案 0 :(得分:2)
循环遍历数组,将每一个与当前时间进行比较。将最接近的一个存储在循环外的变量中,每次检查该变量并仅在迭代器值更接近时更新其值。我不是故意发布代码,因为这是你需要学习成为开发人员的事情。
答案 1 :(得分:0)
存储字符串无法帮助您比较“时间”。 尝试在NSTimeInterval中存储“时间”。
然后你应该能够比较并选择最接近当前时间的时间。
编辑: 如何转换为NSTimeInterval以及如何比较的方式应该留给您实现。