perechislenija

Различия

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

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

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
perechislenija [2023/09/18 12:52]
oresh.dm
perechislenija [2023/09/18 13:13] (текущий)
oresh.dm
Строка 6: Строка 6:
   }   }
      
-// Ассоциированные значения+// Ассоциированные значения //
  
-enum Proffesion { +   enum Proffesion { 
-case programmer(String,String, Int) +   case programmer(String,String, Int) 
-case sysadmin(String) +   case sysadmin(String) 
-+   
-let myProffesion = Proffesion.programmer("Vanya","June",5)+   let myProffesion = Proffesion.programmer("Vanya","June",5)
      
 +  
 +// Чистые значения //
 +  Могут быть только простого типа
 +  
 +  enum MyPetName: String {
 +  case cat = "Vasya"
 +  case dog = "Petya"
 +  }
 +  
 +  var myCat = MyPetName.cat 
 +  var myCatName = myCat.rawValue- // Доступ к чистому значению
 +  
 +  
 +// Протокол CAseIterable //
 +
 +Позволяет исплользовать .allCases - по сути можно сделать массив из перечиления
 +
 +  // Свойства
 +
 +  enum Season {
 +  case winter = 1, spring = 2, summer = 3, autumn = 4
 +  //case winter = 1, spring, summer,autumn // аналогично строке віше
 +  
 +  var label: String {
 +  switch self {
 +  case .winter:
 +  return "Zima"
 +  }
 +  }
 +  }
 +  
 +// Инициализаторы для перечислений //
 +
 +Можно создать инициал. для перечисл.
 +
 +//Методы перечислений  //
  
 +По аналогии с функциями  
  • /sites/data/attic/perechislenija.1695041570.txt.gz
  • Последнее изменение: 2023/09/18 12:52
  • oresh.dm