我怎样才能得到时间之间的时间并打印每个时间间隔?

How can i get hours between time's and print each interval?

我想得到两次之间的小时数,字符串格式如下:

startTime = "9:00AM"
endTime = "11:00AM"

然后在它们之间每隔 1 小时打印一次。所以对于这个例子,它将是:

9:00 AM - 10:00 AM
10:00 AM - 11:00 AM

另一个例子是:

startTime = 2:30AM
endTime = 1:30AM

这之间的间隔将从 2:30 上午、3:30 上午、4:30 上午等一直到第二天 1:30 上午。最快的方法是什么?

  • 使用 DateFormatter 将字符串转换为 Date 对象并添加当前的日期、月份和年份以获得可靠的日期。
  • 使用Calendar的方法enumerateDates(startingAfter:matching:matchingPolicy: repeatedTimePolicy获取中间日期。
  • DateComponentsFormatter可以得到两个日期的字符串区间表示。