opcionalnye_tipy_opcionaly

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
opcionalnye_tipy_opcionaly [2023/09/11 07:20]
oresh.dm
opcionalnye_tipy_opcionaly [2023/09/11 07:41] (текущий)
oresh.dm
Строка 3: Строка 3:
 var name: Sting? = nill  var name: Sting? = nill 
  
-=== 1. Жесткое (прямое) извлечение из опционала - unwraping - "!": ===+==== 1. Жесткое (прямое) извлечение из опционала - unwraping - "!": ====
  
 var name: Sting? = "Dima" var name: Sting? = "Dima"
Строка 11: Строка 11:
 Так можно делать если на 100% уверен что внутри опционала есть значение. Так можно делать если на 100% уверен что внутри опционала есть значение.
  
-=== 2.мягкое извлечение из опционала с помощью ответвлений ===+==== 2. Мягкое извлечение из-под опционала с помощью ответвлений ===
 + 
 +==== 3. Оператор объединения по nil / Оператор оционального связывания ==== 
 + 
 +  var name: String? = nil 
 + 
 +  var defaultName = "Gost'" 
 + 
 +  let nameForGreating = name ?? defaultName 
 + 
 +  print("\(nameForGreating)"
 + 
 +Проверка идет слева направо. сначала проверяется опционал, если там есть значение -х берем его, иначе значение из второй переменной "defaultName" 
 + 
 +==== Пример работы с тернальным оператором: ==== 
 + 
 +var name: String = "Dima" 
 + 
 + 
 +var age:Int? = 37 
 + 
 + 
 +age != nil ? (print("Имя \(name),возраст \(age!)")) : (print("Имя \(name)")) 
 + 
 + 
 + 
 + 
 + 
  
  • /sites/data/attic/opcionalnye_tipy_opcionaly.1694416807.txt.gz
  • Последнее изменение: 2023/09/11 07:20
  • oresh.dm