Výčet C#

Vycet C



C# je programovací jazyk, který se používá k vývoji programů, webových stránek, aplikací pro Android, her a mnoha dalších. C# podporuje různé knihovny a rámce, které mají vestavěné funkce. Enum je výčet, je to třída. Třída má v sobě různé datové typy a funkce, datovou strukturu, která v sobě obsahuje různé proměnné. Výčet je zvláště užitečný, když známe všechny proměnné v době kompilace, které uživatel definuje v nich datové typy. Enum obsahuje různé hodnoty a tyto hodnoty nelze změnit. Hodnoty lze načíst a použít v kódu, ale nemůžeme je změnit za běhu, jsou pouze čitelné a neměnné. Enumerace zachází se všemi daty v něm jako s řetězcem, pokud chceme použít celočíselnou hodnotu, musíme napsat cast. Výčet je užitečný, protože zabírají méně paměti a místa.

Syntax







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


Nebo



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


Atribut 'výčet' je klíčové slovo pro definování výčtu. Kdykoli potřebujeme uživatelem definované datové typy, výčet' klíčové slovo se používá k vytvoření uživatelem definovaného datového typu. ' E_name' je název třídy enum. Uvnitř této třídy budou složené závorky obsahovat všechny parametry a hodnoty v ní. Argumenty můžeme pouze napsat a překladač jim přiřadí hodnoty. Ve výchozím nastavení se počínaje první hodnotou ukládá do indexu 0 a další na 1 a tak dále.



Neexistuje žádné omezení na datový typ argumentů, můžeme přiřadit celočíselné hodnoty, hodnoty s pohyblivou řádovou čárkou, znaky, booleovské hodnoty nebo řetězce. Pokud ale k hodnotám datové typy nepřiřadíme, automaticky jim přiřadí konstantní hodnotu, kde jsou uloženy.





Typy

V jazyce C# existují dva typy výčtů. Jsou uvedeny níže:

    • Jednoduchý výčet
    • Výčet vlajky

Jednoduchý výčet

V této kategorii obsahují členové třídy ‚enum‘ jednu hodnotu.



Výčet příznaků

V této kategorii obsahuje člen třídy výčtu příznaku více hodnot nebo více hodnot pomocí bitového operátoru nebo pomocí OR (|).

Příklad 1:

V tomto případě se naučíme, jak můžeme používat jednoduchou třídu „enum“ a získávat hodnoty, aniž bychom je přiřazovali k proměnným.


Pro kódování v programovacím jazyce C# musíme nejprve vytvořit nový projekt a poté začít kódovat. Když chceme vytvořit konzolovou aplikaci, měli bychom vybrat konzolovou aplikaci, framework C#, která automaticky zapíše funkci class a main(). Abychom v kódu použili jednoduchý termín ‚výčet‘ výše, nadefinujeme a inicializujeme vnitřní třídu ‚Program‘. Protože enum je klíčové slovo a hned další slovo po enum je ‘názvy ovoce’. Uvnitř složených závorek definujeme požadovaný seznam. Zde třída enum obsahuje čtyři názvy ovoce. Všechny funkce voláme uvnitř metody main(). Uvnitř statické main() zobrazíme jednu po druhé všechny hodnoty enum. V tomto kódu zapisujeme pouze argumenty enum, nikoli hodnoty. Automaticky jim tedy přiřadí indexy, kde jsou uloženy jako hodnota.

Funkce Console.writeline() slouží k zápisu na výstupní obrazovku a po prezentaci zprávy přesune kurzor na další řádek. Uvnitř tohoto příkazu napište zprávu a zřeťte ji znaménkem „+“, aby se zobrazila definovaná zpráva s hodnotou. Po zřetězení zadejte ‚název výčtu‘ a použijte (.) k adresování konkrétního typu ‚výčtu‘: fruit_names.Apple. Potom v dalším příkazu znovu použijte znaménko (+) ke zřetězení typu se zprávou a indexem, kde je uložen. Abychom získali index, musíme jej nejprve převést na celé číslo pomocí přetypování. V typu C# se casting provádí pouze pomocí závorek. Do závorky napište datový typ, do kterého chceme typovat. Mimo závorku napište název proměnné, tj. (int)var_name. Tímto způsobem můžeme získat zprávu s hodnotou enum a indexem, kde je uložena.

Opakujte to třikrát; stačí změnit typ zprávy a výčtu. Díky výčtu vypadá kód hezky a čistě. Funkce Console.ReadKey() udrží konzoli aktivní, dokud ji nezavřeme. Pokud toto prohlášení nepoužijeme, konzole jednou blikne a poté zmizí.

Příklad 2:

V tomto programu implementujeme jednoduchou třídu ‚enum‘ přiřazením různých hodnot atributům třídy.


Ve druhém příkladu jsme opět vytvořili projekt pro konzolovou aplikaci a definovali výčet uvnitř interní třídy ‚Program‘ s klíčovým slovem ‚enum‘. Tentokrát obsahuje třídu ‚položky‘ s různými hodnotami. Uvnitř funkce main() získáme přístup ke všem prvkům třídy enum ‚items‘. Použijme metodu console.writeLine(). Zobrazí vše, co v něm je. Nejprve zobrazte zprávu a poté znovu zavolejte funkci Console.WriteLine() pro zobrazení první položky s množstvím. Definujte text, který chceme zobrazit na terminálu a spojte jej s položkami.židle. Získá první položku (židle) z výčtové třídy ‚položky‘. Abychom získali množství této položky, musíme provést přetypování, protože data ve třídě enum jsou ve formě řetězce. Pro přístup k jejich hodnotám tedy nejprve napíšeme cast. Chcete-li získat hodnotu ‚židle‘, proveďte odlévání jako (int)items.chairs. V opačném případě získáme pouze položku ‚židle‘, nikoli její hodnotu. Zde, pokud jsme si všimli, jsou použity symboly ‚\n‘ a ‚\t‘. Pomocí ‚\t‘ dáme tabulátor a pomocí ‚\n‘ přesuneme kurzor na další řádek. Tento postup opakujte dvakrát. Musíme pouze aktualizovat hodnoty výčtu. Nakonec stačí napsat console.ReadKey(), aby konzole zůstala aktivní, abychom mohli vidět výstup.

Příklad 3:

V tomto scénáři použijeme výčet „příznaků“.


V jednoduchém výčtu můžeme členu třídy enum přiřadit pouze jednu hodnotu. Ale s výčtem příznaků můžeme jednomu členu třídy výčtu přiřadit více než jednu hodnotu. Tento typ výčtu je užitečný, když se zabýváme různými možnostmi a když máme více než jednu hodnotu. Chcete-li použít výčet příznaků, před definováním třídy výčtu musíme napsat [příznaky] a poté zapsat výčtovou třídu ‚příznak_příznaku‘. Nyní, uvnitř této třídy, můžeme snadno přiřadit více než jednu hodnotu jednomu členu. V tomto příkladu jsme přiřadili dvě hodnoty atributu ‚driver‘ a obě hodnoty oddělili pomocí operátoru (|). Poté ve funkci main() deklarujte proměnnou ‚var flags‘. Chcete-li na konzole zobrazit více než jednu položku, použijte operátor nebo (|) a poté zavolejte položky výčtu s názvem třídy a názvem položky. Chcete-li zobrazit zprávu, vyvolejte metodu Console.WriteLine(). Chcete-li reprezentovat hodnotu příznaku, napište „příznak“ v jiné Console.Write(). V dalším příkazu je volána funkce Console.ReadKey(), která ponechá konzoli otevřenou, dokud ji nezavřeme.

Závěr

V této příručce jsme se dozvěděli o výčtu, co to je a jak jej můžeme využít v jazyce C#. Enumerace činí kód jednoduchým a čitelným. Protože hodnoty ve třídě enum nelze změnit. Poskytuje nám výhody, když se zabýváme takovými daty, která nevyžadují změnu hodnot. Probrali jsme syntaxi a typy výčtu pomocí různých kódů. Výčet zabírá méně paměti a snadno se používá.