Enumerácia C#

Enumeracia C



C# je programovací jazyk, ktorý sa používa na vývoj programov, webových stránok, aplikácií pre Android, hier a mnohých ďalších. C# podporuje rôzne knižnice a rámce, ktoré majú vstavané funkcie. Enum je enumerácia, je to trieda. Trieda má v sebe rôzne dátové typy a funkcie, dátovú štruktúru, ktorá obsahuje rôzne premenné. Enumerácia je obzvlášť užitočná, keď poznáme všetky premenné v čase kompilácie, v ktorých používateľ definuje typy údajov. Enum obsahuje rôzne hodnoty a tieto hodnoty nemožno zmeniť. Hodnoty je možné získať a použiť v kóde, ale nemôžeme ich zmeniť počas behu, sú iba čitateľné a nemenné. Enumerácia zaobchádza so všetkými údajmi v ňom ako s reťazcom, ak chceme použiť celočíselnú hodnotu, musíme napísať cast. Enumerácia je užitočná, pretože zaberá menej pamäte a miesta.

Syntax







enum E_Name { Hodnota_1, Hodnota_2, Hodnota_3,….. } ;


Alebo



enum E_Name { Hodnota_1 = 3. 4 , Hodnota_2 = 90 , Hodnota_3 = 8 ,….. } ;


Atribút 'enum' je kľúčové slovo na definovanie enumerácie. Kedykoľvek potrebujeme užívateľom definované dátové typy, enum' kľúčové slovo sa používa na vytvorenie užívateľom definovaného typu údajov. ' E_name' je názov triedy enum. Vo vnútri tejto triedy budú zložené zátvorky obsahovať všetky parametre a hodnoty v nej. Argumenty môžeme len napísať a kompilátor im priradí hodnoty. Štandardne sa počnúc od prvej hodnoty ukladá do indexu 0 a ďalšia na 1 atď.



Neexistuje žiadne obmedzenie na dátový typ argumentov, môžeme priradiť celočíselné hodnoty, hodnoty s pohyblivou rádovou čiarkou, znaky, booleovské hodnoty alebo reťazce. Ak ale k hodnotám nepriradíme dátové typy, automaticky im priradí konštantnú hodnotu, kde sú uložené.





Typy

V jazyku C# existujú dva typy enumerácie. Tieto sú uvedené nižšie:

    • Jednoduchý výčet
    • Enumerácia vlajky

Jednoduché vyčíslenie

V tejto kategórii obsahujú členovia triedy „enum“ jednu hodnotu.



Vyčíslenie vlajok

V tejto kategórii člen triedy enum príznaku obsahuje viaceré hodnoty alebo viaceré hodnoty pomocou bitového operátora alebo pomocou OR (|).

Príklad 1:

V tomto prípade sa naučíme, ako môžeme použiť jednoduchú triedu „enum“ a získať hodnoty bez ich priradenia k premenným.


Pre kódovanie v programovacom jazyku C# musíme najprv vytvoriť nový projekt a potom začať kódovať. Keď chceme vytvoriť konzolovú aplikáciu, mali by sme vybrať konzolovú aplikáciu, framework C#, ktorá automaticky napíše funkciu class a main(). Aby sme v kóde použili jednoduchý výraz „enum“, zadefinujeme a inicializujeme internú triedu „Program“. Keďže enum je kľúčové slovo a hneď ďalšie slovo po enum je „názvy ovocia“. Vo vnútri zložených zátvoriek definujeme požadovaný zoznam. Tu trieda enum obsahuje štyri názvy ovocia. Všetky funkcie v rámci metódy main() voláme. Vo vnútri statickej main() zobrazíme jednu po druhej všetky hodnoty enum. V tomto kóde píšeme len argumenty enum, nie hodnoty. Automaticky im teda priradí indexy, kde sú uložené ako hodnota.

Funkcia Console.writeline() slúži na zápis na výstupnú obrazovku a po odprezentovaní správy presunie kurzor na ďalší riadok. Do tohto príkazu napíšte správu a zreťazte ju znamienkom „+“, aby ste zobrazili definovanú správu s hodnotou. Po zreťazení zadajte „názov výčtu“ a použite (.) na adresovanie konkrétneho typu „názov výčtu“: fruit_names.Apple. Potom v ďalšom príkaze znova použite znak (+) na zreťazenie typu so správou a indexom, kde je uložený. Aby sme získali index, musíme ho najprv previesť na celé číslo pretypovaním. V type C# sa casting vykonáva iba pomocou zátvoriek. Do zátvorky napíšeme dátový typ, do ktorého chceme typovať. Mimo zátvorky napíšte názov premennej, t. j. (int)var_name. Týmto spôsobom môžeme získať správu s hodnotou enum a indexom, kde je uložená.

Opakujte to trikrát; stačí zmeniť správu a typ enum. Enumerácia robí kód pekným a čistým. Funkcia Console.ReadKey() udrží konzolu aktívnu, kým ju nezavrieme. Ak toto vyhlásenie nepoužijeme, konzola raz zabliká a potom zmizne.

Príklad 2:

V tomto programe implementujeme jednoduchú triedu „enum“ priradením rôznych hodnôt atribútom triedy.


V druhom príklade sme opäť vytvorili projekt pre konzolovú aplikáciu a definovali enumeráciu vnútri internej triedy „Program“ s kľúčovým slovom „enum“. Tentoraz obsahuje triedu „položky“ s rôznymi hodnotami. Vo funkcii main() získame prístup ku všetkým prvkom triedy enum ‘items’. Využime metódu console.writeLine(). Zobrazí všetko, čo v ňom je. Najprv zobrazte správu a potom znova zavolajte funkciu Console.WriteLine() na zobrazenie prvej položky s množstvom. Definujte text, ktorý chceme zobraziť na termináli a zreťazte ho s položkami.stoličky. Získa prvú položku (stoličky) z enum triedy „položky“. Aby sme získali množstvo tejto položky, musíme vykonať pretypovanie, pretože údaje v triede enum sú vo forme reťazca. Aby sme teda získali prístup k ich hodnotám, najprv napíšeme cast. Ak chcete získať hodnotu „stoličiek“, urobte casting ako (int)items.chairs. V opačnom prípade získame iba položku „stoličky“, nie jej hodnotu. Tu, ak sme si všimli, sa používajú symboly „\n“ a „\t“. Použitím „\t“ dáme tabulátor a pomocou „\n“ presunieme kurzor na ďalší riadok. Tento postup zopakujte dvakrát. Musíme len aktualizovať hodnoty enum. Nakoniec stačí napísať console.ReadKey(), aby bola konzola aktívna, aby sme mohli vidieť výstup.

Príklad 3:

V tomto scenári použijeme zoznam „vlajok“.


V jednoduchom enumerácii môžeme členovi enum triedy priradiť iba jednu hodnotu. Ale pomocou enumerácie príznaku môžeme priradiť viac ako jednu hodnotu jednému členovi triedy enum. Tento typ enumerácie je užitočný, keď sa zaoberáme rôznymi možnosťami a keď máme viac ako jednu hodnotu. Ak chcete použiť enumeráciu príznakov, pred definovaním triedy enum musíme napísať [flags] a potom napísať triedu enum ‘príznak_príznaku’. Teraz v tejto triede môžeme jednoducho priradiť viac ako jednu hodnotu jednému členovi. V tomto príklade sme atribútu ‘driver’ priradili dve hodnoty a obe hodnoty oddelili pomocou operátora (|). Potom vo funkcii main() deklarujte premennú „var flags“. Ak chcete na konzole zobraziť viac ako jednu položku, použite operátor alebo (|) a potom zavolajte položky enum s názvom triedy a názvom položky. Ak chcete zobraziť správu, vyvolajte metódu Console.WriteLine(). Ak chcete reprezentovať hodnotu príznaku, napíšte „príznak“ v inej Console.Write(). V ďalšom príkaze sa volá funkcia Console.ReadKey(), ktorá ponechá konzolu otvorenú, kým ju nezatvoríme.

Záver

V tejto príručke sme sa dozvedeli o enumerácii, čo to je a ako ho môžeme využiť v jazyku C#. Enumerácia robí kód jednoduchým a čitateľným. Pretože hodnoty v triede enum nemožno zmeniť. Poskytuje nám výhody, keď sa zaoberáme takým druhom údajov, ktoré si nevyžadujú zmenu hodnôt. Rozoberali sme syntax a typy enumerácie pomocou rôznych kódov. Enumerácia zaberá menej pamäte a ľahko sa používa.