给定年份和月份,该月份如何检查特定日期

Ram*_*sad 4 calendar nsdate nsdatecomponents ios swift

我想检查一个月内是否存在特定日期.但无法找到任何帮助.举个例子,我在Playground中尝试了下面的代码;

var components = DateComponents()
components.month = 2
components.year = 2016
components.day = 30
components.calendar = Calendar.current

components.date
Run Code Online (Sandbox Code Playgroud)

这给出了答案;

"Mar 1, 2016, 12:00 AM"
Run Code Online (Sandbox Code Playgroud)

所以它做的是它试图用TimeZones操纵并移动针.因此,我无法找到一种方法来检查特定日期和特定日期是否存在.任何人都可以指导.

Mar*_*n R 10

DateComponents有一个isValidDate属性,您可以用于此目的:

var components = DateComponents()
components.month = 2
components.year = 2016
components.day = 30
components.calendar = Calendar.current

print(components.isValidDate) // false
Run Code Online (Sandbox Code Playgroud)