QUESTION:
Write a program to count the number of days between two dates.
The two dates are given as strings, their format is YYYY-MM-DD as shown in the examples.
Example 1:
Input: date1 = "2019-06-29", date2 = "2019-06-30"
Output: 1
Example 2:
Input: date1 = "2020-01-15", date2 = "2019-12-31"
Output: 15
Constraints:
The given dates are valid dates between the years 1971 and 2100.
EXPLANATION:
这道题目我点了个踩, 如果自己去计算年月日, 那么边际条件就很多. 如果不是自己去计算, 那么就是完全在考api的熟悉程度. 毫无意义.
SOLUTION:
class Solution {
func daysBetweenDates(_ date1: String, _ date2: String) -> Int {
var formatter:DateFormatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd"
var dateA:Date = formatter.date(from: date1)!
var dateB:Date = formatter.date(from: date2)!
let days = Calendar.current.dateComponents([.day], from: dateA, to: dateB)
return abs(days.day!)
}
}