Добрый день, дорогие читатели моего журнала rusinfoproduct.ru. Cегодня новый урок по Свифту и будет интересно!
Swift 4 имеет тип Optionals, который обрабатывает отсутствие значения. Он выглядит так “есть значение, и оно равно х” или “нет значения”.
Опциональный тип, на самом деле один из новых супермощных достижений в Swift 4. Он имеет два возможных значения, None и Some(T), где T – связанное значение правильного типа данных, доступного в Swift 4.
Вот optional целочисленное объявление −
var perhapsInt: Int? Вот объявление строки в optional −
var perhapsStr: String? Приведенное выше объявление эквивалентно явной инициализации его к нулю, что означает отсутствие значения
var perhapsStr: String? = nil Давайте рассмотрим следующий пример, чтобы понять, как optionals работает в Swift 4 −
var myString:String? = nil
if myString != nil {
print(myString)
} else {
print(“myString has nil value”)
}
Когда мы запускаем вышеуказанную программу с помощью playground, мы получаем следующий результат −
myString has nil value
Optionals похож на использование nil в Objective-C, но он работает для любого типа, а не только для классов.
Принудительное Разворачивание
Если переменная определена как optionals, то для получения значения из этой переменной ее необходимо развернуть. Это просто означает поставить восклицательный знак в конце переменной.
Давайте возьмем простой пример −
var myString:String?
myString = “Hello, Swift 4!”
if myString != nil {
print(myString)
} else {
print(“myString has nil value”)
}
Когда мы запускаем вышеуказанную программу с помощью playground, мы получаем следующий результат −
Optional(“Hello, Swift 4!”)
Теперь давайте применим разворачивание, чтобы получить правильное значение переменной −
var myString:String?
myString = “Hello, Swift 4!”
if myString != nil {
print( myString! )
} else {
print(“myString has nil value”)
}
Когда мы запускаем вышеуказанную программу с помощью playground, мы получаем следующий результат.
Hello, Swift 4!
Автоматическое разворачивание
Можно объявить дополнительные переменные с помощью восклицательного знака вместо вопросительного знака. Такие опциональные переменные будут развернуты автоматически, и вам не нужно использовать восклицательный знак в конце переменной, чтобы получить назначенное значение. Давайте возьмем простой пример −
var myString:String!
myString = “Hello, Swift 4!”
if myString != nil {
print(myString)
} else {
print(“myString has nil value”)
}
Запускаем программу и получаем наш результат –
Hello, Swift 4!
Привязка в optionals
Используйте привязку, чтобы узнать, содержит ли опциональное значение, и если да, чтобы сделать это значение доступным как временная константа или переменная.
Опциональная привязка для оператора if выглядит следующим образом −
if let constantName = someOptional {
statements
}
Давайте друзья возьмем простой пример, чтобы понять использование привязки −
var myString:String?
myString = “Hello, Swift 4!”
if let yourString = myString {
print(“Your string has – \(yourString)”)
} else {
print(“Your string does not have a value”)
}
Нажимаем на RUN и получаем следующий код –
Your string has – Hello, Swift 4!
На сегодня это все! Следите за новым выпуском журнала).