Ios Swift-从月、日、年组件获取日期

Ios Swift-从月、日、年组件获取日期,ios,swift,date,swift4,Ios,Swift,Date,Swift4,如何将DateComponents转换为日期对象。 目前,我有以下代码 Calendar.date(from: DateComponents(year: 2018, month: 1, day: 15)) 但是我得到一个错误,指出“没有'date'候选者生成预期的上下文结果类型'date' 对于这个基本问题,我很抱歉,但是我仍然在努力解决如何在Swift中使用日期的问题。您不能在类型上调用date(从调用)。您必须使用日历的一个实例,或者是当前的日历 Calendar.current.date

如何将DateComponents转换为日期对象。 目前,我有以下代码

Calendar.date(from: DateComponents(year: 2018, month: 1, day: 15))
但是我得到一个错误,指出“没有'date'候选者生成预期的上下文结果类型'date'

对于这个基本问题,我很抱歉,但是我仍然在努力解决如何在Swift中使用日期的问题。您不能在类型上调用
date(从
调用)。您必须使用日历的一个实例,或者是
当前的
日历

Calendar.current.date(from: DateComponents(year: 2018, month: 1, day: 15))
还是固定的

let calendar = Calendar(identifier: .gregorian)
calendar.date(from: DateComponents(year: 2018, month: 1, day: 15))
//create an instance of DateComponents to keep your code flexible
var dateComponents = DateComponents()

//create the date components
dateComponents.year = 2018
dateComponents.month = 1
dateComponents.day = 15
//dateComponents.timeZone = TimeZone(abbreviation: "EST")
dateComponents.hour = 4
dateComponents.minute = 12

//make something useful out of it
func makeACalendarObject(){

//create an instance of a Calendar for point of reference ex: myCalendar, and use the dateComponents as the parameter
let targetCalendar = Calendar.current
let newCalendarObject = targetCalendar.date(from: dateComponents)


guard let newCalObject = newCalendarObject else {
    return
}
print(newCalObject)
}
//call the object
makeACalendarObject()