gpt4 book ai didi

ios - 从日期范围创建日期字符串数组

转载 作者:搜寻专家 更新时间:2023-11-01 07:04:01 24 4
gpt4 key购买 nike

我有 Date() 属性。 startingAtendingAt。和一组 Date(),它们是 alreadyRegistred。我必须创建一个日期介于 startingAtendingAt 之间的字符串数组。包含 StartingAtendingAt,最后一个要求是排除 alreadyRegistred 日期。

你有什么优雅的想法,如何实现?感谢您的帮助!

编辑:最终数组中的最大日期数约为 7 天。

最佳答案

不要忘记 Date 基本上只是一个时间戳,您可以访问 addingTimeInterval(_:)方法。

知道了这一点,就很容易在两个日期之间进行一些计算。

我不完全了解您所需的业务逻辑,但这是一个在两个日期之间生成 Dates 的简单实现。我相信您可以在 Playground 上运行它并进行一些探索。

import UIKit

func intervalDates(from startingDate:Date, to endDate:Date, with interval:TimeInterval) -> [Date] {
guard interval > 0 else { return [] }

var dates:[Date] = []
var currentDate = startingDate

while currentDate <= endDate {
currentDate = currentDate.addingTimeInterval(interval)
dates.append(currentDate)
}

return dates
}


let startingDate = Date() // now
let endDate = Date(timeIntervalSinceNow: 3600 * 24 * 7) // one week from now
let intervalBetweenDates:TimeInterval = 3600 * 3// three hours

let dates:[Date] = intervalDates(from: startingDate, to: endDate, with: intervalBetweenDates)



let dateFormatter = DateFormatter()
dateFormatter.dateStyle = .long
dateFormatter.timeStyle = .long

let dateStrings = dates.map{dateFormatter.string(from: $0)}

print("NOW : \(startingDate)")
for (index, string) in dateStrings.enumerated() {
print("\(index) : \(string)")
}
print("END DATE : \(endDate)")

关于ios - 从日期范围创建日期字符串数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49169862/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com