【问题标题】:Swift 2 for loop low and high date betweenSwift 2 for 循环低和高日期之间
【发布时间】:2018-08-17 22:57:02
【问题描述】:

我有数组;

var mydates             : [String] = []
let startDate           = "2018-03-01"
let endDate             = "2018-03-03"

我有 3 个变量,startDateendDatedates,我想附加这些变量,比如;

如果startDate = 2018-03-01,并且endDate = 2018-03-03

将在开始日期和结束日期的所有日期之间添加 dates variable inside = "2018-03-01,2018-03-02,2018-03-03"。

我怎样才能在 swift 2 中做到这一点?

【问题讨论】:

标签: swift variables swift2 nsdate


【解决方案1】:

这是打印两个日期之间的所有日期的解决方案(Swift 4 代码)

var mydates : [String] = []
let startDate = "2018-03-01"
let endDate   = "2018-03-05"

var dateFrom =  Date() // First date
var dateTo = Date()   // Last date

// Formatter for printing the date, adjust it according to your needs:
let fmt = DateFormatter()
fmt.dateFormat = "yyy-MM-dd"
dateFrom = fmt.date(from: startDate)!
dateTo = fmt.date(from: endDate)!


while dateFrom <= dateTo {
    mydates.append(fmt.string(from: dateFrom))
    dateFrom = Calendar.current.date(byAdding: .day, value: 1, to: dateFrom)!

}

print(mydates) // Your Result

输出是:

["2018-03-01", "2018-03-02", "2018-03-03", "2018-03-04", "2018-03-05"]

【讨论】:

  • 请详细说明您的答案,以便其他人了解您所做的事情。
  • @Lachie 现在检查一下 :)
猜你喜欢
  • 2020-09-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多