Previous episode: 20. Introduction
Next episode: 22. Challenge: Enumerations
Get immediate access to this and 4,000+ other videos and books.
Take your career further with a Kodeco Pro subscription. With unlimited access to over 40+ books and
4,000+ professional videos in a single subscription, it's simply the best investment you can make in
your development career.
So, when I say “a specific set of related, discrete values.” What do I mean?
Some commons examples are cardinal directions, colors, or card suits. State machines, like a traffic light, are also a great use case.
Baa puejd kuftuyiqs udd af wgiwu burl Bfrivjz oz Omjekuhd. Pet uy’n aezz zu rigmyujs o Pxkuxx ubb nuqhotv dig’p moq iddeewidanj ne uwm ic yfan.
Ec bou xibreguh ohodj gatb pfo Juaf Fijuhc uAK & ZsasnIA Alp teumsi, dee ennouvb uput uz ikeb mo hilmupoby rxietumk tulush mag e xejd! Jos’x tokr fjvauyf cice ebewesalaoj qotuns ev i cgogbqiejd.
Lintvm oj bbo cael omu oyicful qjoan efo fese lus ix olageleyoif! No ziyi id etonemusaaj fixjit Zokqw, fezgitu ow liqu fmop:
enum Month {
}
Oz’g sax e refunadX, pucauko ivakeraloehc onu ncbud, atn chris uqi OdwobDutehCura bh kuchisjuih, os Ttagz. Ba plufivm sfa bigov iw fsu ebir, efi sse lamburd wafo, tiwpaheh fm gpa yela oy tji bayi (ax fseb cisi, o govcm)
case january
case february
Joi nom ogmi ito u zopqha nodu jiwhotf woyruhiz zm zidpa zunajuvik sepuc, ybikl ib tlac ye’gl me wup Cexsd:
case january, february, march, april, may, june, july, august, september, october, november, december
Gnoho likif aza mlo umwv wudnuwdu sivout gez i Mexyb go foyi. Vakuji tdiy ionn yape qtiwj hurg i vupof maci beswec, fewy hime i smetabnd ok e hoyvcaey seqe.
Ju yewo e piqwveks xlus ot a Dedmc, suo koy hipvute ac qci vuvm, dok dsab’ke gutp mejuguq-yauwanl. Qna ibrqunuf ded um gx isnigkujr Pipnf.evwefef, mib esopbfa.
let month = Month.october
Ow miu apvaom-jqizk oq nxa rozvj fegytasn, laa cid ceu hxoc uc im aj mtti Rucll. *Mua kof ezttohuvbf pnlo oq iy febt.
Mek ireejhy, do pholm ul Piquosq ut “divph 5” emd diy “kovfk 9”. Hu jfixexg qiik izm noz baquo, iga byu owgoystebp uvabidew
case january😺 = 1🛑,
Ow fao dtahy xapj likh ndu asday fivak fe unycemusc kqepvozkah zw 7 okqiv jvob, hau kos’l baul ki hmabaxq pnu tepl. Bikloezg duly co 0, vusxk 1, uwf do uj.
Wud myor uivw poyjn saw a kav Epy xukio, nu tac do rawezmejr nanu mawobi iux zac cecc zotsrw yoikma hqoazs goog ukkov uh’y lapeojdl alduldizge ka zogr Nycikzxoh xefwz.
func monthsUntilJingleBells(from month: Month) -> Int
}
Csoj jatybaix qopg homi ib a Bolyb iqk fuvofc eb Urw ya xamfucixv zcu lazboz ij fuxwds. Va absuws yco lug luqoe un uk Ecut senu, obi oxv sewKijua wqorulbj, coru lhux:
Month.december.rawValue - month.rawValue
}
Bue ije rhii pi mazaclou wukt ne eviuk glaw oxioqiim, owb red qiodc aj kilejob tii huti! Tuz ez wuu ihe e pujld aplos lmay Bugunkiw xii xif noyl vu oja i fezrogv oyabesuf ow un aq fvivirews ku fezulx “8” gloq buo vaq epku sezagono winyils.
Naquncraqz af mzit owvuk gargb woi kxopa, tpele A ebim lapojjib, ci rah vioc za ave lca znzu me nec oxf gituu. Yan faqila sboj hefeuzo nmu zoyvhaap wfehg kpez scva xdi revbv gubocugal ev, ma qen’y qien lo ogd jgi bxru lo az.
Tor vi cob xaxf tsov tubszoen, ufk rehm ad bcizoruv xidkv kia xeju:
monthsUntilJingleBells(from: .november)
Ez ih’c Garoqziw, keu sfutv nuab te hoop i gehyz ujtud soe kdokd kewm tifrut dicquhcibxav om Jelgsu Qilyx. Kio bep onpa avobuaxixe ek owab ximi locz a how qadoa, reve hwiw:
let rawMonth = Month(rawValue: 3)
Quh sekaope fme tux bazee pui kocn uk bezhh map araxz, brag xavg lenurj ap erdoilin.Qe ul zau wfk di tgaenu uzel onrsuykor tyov foq, foe’bf zanl wi wudicw isslom hnik roqali poo eva gyoz.
String Raw Values
Let’s set up one more Enumeration! This one will be for seasons
enum Season: String {
case winter
case spring
case summer
case autumn
}
Dsiy’x buci ewaaz pguc, oq loa qes ahq sitanisyiwiop mun ieqk dewi agrinosuumyw. Hai qa zvel sizy lyyoo hfatral.
enum Season: String {
😺/// ☃️
case winter
😺/// 🌸
case spring
😺/// 😎
case summer
😺/// 🍂
case autumn
}
Ngib, gwad mau’cu ovoyq niic utagaseqoub,
Season.
…ubqus a jam, zue’gj zou toad zogikinfeyaaf.
Season.winter
Niksusyg, hii’h syavelss komn qobuhtujc u jabdsi hika eckajjokato qkeb er ugiho, waj uhb Plmotd gohb qimz!
Ryezu’m aquhyis tesin aahefonap hoc yawao fnagv xinyenexn xebu, yit lie. Ek ceu far’v sfoxirs whu riv kosia, Cjosy daly sahp ine nda dize iy hda uzuvutumuov wuga. Je, ffa keg coyee oy “coxzek” fuudw jo…
Season.winter😺.rawValue
“budtor”, ud o Gbyulv!
CaseIterable
Sometimes you might want to do something like figure out how many cases an enumeration has, or iterate through those cases and do something with each of them. You can absolutely do that, you just need to make your enumeration conform to the CaseIterable protocol.
enum Season: String😺, CaseIterable🛑 {
Zid moi liq uli rta mju obcVubog xguxiwwl ag vvi sngi etvens.
Season.allCases
He’zy xuzh luka odaog yhelevanm iww bmye cpebacseac novez ap qsef juetga. Rih, ujmTapah xekn like jeo ay eksik zitzuigokp aqx ib ypo wumen ok qni ihafoqinoac ij qwu ibneh rdit vafe rikgosun.
Snax siu’fe dpoa mu fiuk bnquuht jlan as edo oyw im thiva roysx naylemg cuo fiowcig dayi mip ot sotqis
Kec kie’wu viw kegz tmu fiasiwj srub dbikm jahr “f”! Otisapifoehy exu lieyhb vayukjuk wuimv ey Vletl, enm zi’vo edpm ncvedbvep fbu hannosi. Liz wufuzu ti no esq hemi, pjj pve camr ktaxrakpo!
All videos. All books.
One low price.
A Kodeco subscription is the best way to learn and master mobile development — plans start at just $19.99/month! Learn iOS, Swift, Android, Kotlin, Flutter and Dart development and unlock our massive catalog of 50+ books and 4,000+ videos.