表达Swift中的两个等号

时间:2017-04-17 01:17:53

标签: swift

我添加了一个Date扩展名,这是一个阳历的变量,如下所示:

extension Date {
    struct Gregorian {
        static let calendar = Calendar(identifier: .gregorian)
    }
}

我想在Gregorian结构中添加另一个static var以获取firstWeekday = 2的日历。像这样:

struct Gregorian {
    static let calendar = Calendar(identifier: .gregorian)
    static let calender2 = Calendar(identifier: .gregorian).firstWeekday = 2
}

但是,我不能用两个=发表声明。如何才能正确地添加这个新的struct成员?

1 个答案:

答案 0 :(得分:3)

定义并调用闭包以创建calendar2

struct Gregorian {
    static let calendar = Calendar(identifier: .gregorian)
    static let calender2: Calendar = {
        var c = Calendar(identifier: .gregorian)
        c.firstWeekday = 2
        return c
    }()
}