Пустое значение для типа даты в Swift - PullRequest
0 голосов
/ 13 декабря 2018

Я очень новичок в Swift.

Как установить пустое значение для типа Date в Swift для использования в объявлениях?

Как:

var string: String = "" для String тип

var integer: Int = 0 для Int тип.

Спасибо.

1 Ответ

0 голосов
/ 13 декабря 2018

Из документации :

Значение даты инкапсулирует один момент времени, независимо от какой-либо конкретной календарной системы или часового пояса.Значения даты представляют временной интервал относительно абсолютной ссылочной даты.

Другими словами, дата - это не что иное, как TimeInterval, AKA Double, представляющая количество секунд с отчетной даты.,Тогда пустой инициализатор для Date будет тем, который возвращает дату на расстоянии 0 секунд от этой ссылочной даты.Все сводится к выбору контрольной даты:

  • Сейчас: let date1 = Date()
  • 1 января 1970 года в 12:00: let date2 = Date(timeIntervalSince1970: 0)
  • Ян1, 2001 в 12:00: let date3 = Date(timeIntervalSinceReferenceDate: 0)

Вы можете выбрать определенную дату в качестве справочной, если она имеет смысл для вас.Примеры: Date.distantPast, Date.distantFuture, ...

Теперь, если вы хотите, чтобы переменная имела определенный тип, но не имела значения, используйте optionals и установите их значения вnil:

var date4: Date? = nil

Позже, когда вы захотите использовать переменную, просто установите для нее ненулевое значение:

date4 = Date(timeInterval: -3600, since: Date())

Чтобы использовать действительное значение,вам придется развернуть его, используя необязательную привязку или тому подобное.

...