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) 
 +   
 +   
 +// Чистые значения // 
 +  Могут быть только простого типа 
 +   
 +  enum MyPetName: String { 
 +  case cat = "Vasya" 
 +  case dog = "Petya"
   }   }
      
-  let myProffesion Proffesion.programmer("Vanya","June",5)+  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.1695041540.txt.gz
  • Последнее изменение: 2023/09/18 12:52
  • oresh.dm