C# Enumeração

C Enumeracao



C# é a linguagem de programação usada para desenvolver programas, sites, aplicativos Android, jogos e muito mais. C# oferece suporte a diferentes bibliotecas e estruturas que possuem funções internas. Enum é uma enumeração, é uma classe. Uma classe tem diferentes tipos de dados e funções nela, uma estrutura de dados, que contém diferentes variáveis. A enumeração é particularmente útil quando conhecemos todas as variáveis ​​em tempo de compilação que um usuário define os tipos de dados nela. Enum contém valores diferentes e esses valores não podem ser alterados. Os valores podem ser recuperados e usados ​​no código, mas não podemos alterar os valores em tempo de execução, eles são apenas legíveis e inalteráveis. A enumeração trata todos os dados nela como uma string, se quisermos usar um valor inteiro, precisamos digitar cast. A enumeração é útil porque ocupa menos memória e espaço.

Sintaxe







enum E_Name { Valor_1, Valor_2, Valor_3,….. } ;


Ou



enum E_Name { Valor_1 = 3. 4 , Valor_2 = 90 , Valor_3 = 8 ,….. } ;


o atributo 'enum' é a palavra-chave para definir a enumeração. Sempre que precisarmos de tipos de dados definidos pelo usuário, ‘ enum' A palavra-chave é usada para criar o tipo de dados definido pelo usuário. O ' E_name' é o nome da classe enum. Dentro desta classe, as chaves conterão todos os parâmetros e valores nela. Podemos apenas escrever os argumentos e o compilador atribuirá valores a eles. Por padrão, a partir do primeiro valor armazena no índice 0 e o próximo em 1 e assim por diante.



Não há restrição quanto ao tipo de dados dos argumentos, podemos atribuir valores inteiros, valores de ponto flutuante, caracteres, booleanos ou string. Mas se não atribuirmos os tipos de dados aos valores, ele atribuirá automaticamente o valor constante onde estão armazenados.





tipos

Na linguagem C#, existem dois tipos de enumeração. Estes estão listados abaixo:

    • Enumeração simples
    • Sinalizar enumeração

Enumeração Simples

Nesta categoria, os membros da classe ‘enum’ contêm um único valor.



Sinalizar Enumeração

Nesta categoria, o membro da classe enum do sinalizador contém vários valores ou vários valores usando o operador bit a bit ou usando OR (|).

Exemplo 1:

Neste exemplo, aprenderemos como podemos usar a classe 'enum' simples e recuperar os valores sem atribuí-los a variáveis.


Para codificar na linguagem de programação C#, precisamos primeiro criar o novo projeto e depois iniciar a codificação. Quando queremos criar um aplicativo de console, devemos selecionar o aplicativo de console, framework C#, que irá escrever automaticamente a classe e a função main(). Para usar o simples termo 'enum' acima no código, vamos definir e inicializar a classe interna 'Programa'. Como o enum é a palavra-chave e a próxima palavra após o enum é ‘fruit_names’. Dentro das chaves, definimos a lista que queremos. Aqui, a classe enum contém quatro nomes de frutas. Chamamos todas as funções dentro do método main(). Dentro do main() estático, exibiremos um após o outro todos os valores de enumeração. Neste código, apenas escrevemos os argumentos enum, não os valores. Assim, atribuirá automaticamente a eles os índices onde estão armazenados como valor.

A função Console.writeline() é utilizada para escrever na tela de saída e após apresentar a mensagem move o cursor para a próxima linha. Dentro desta instrução, escreva uma mensagem e concatene-a com um sinal '+' para mostrar essa mensagem definida com o valor. Depois de concatenar, digite 'enum name' e use (.) para endereçar um tipo específico de 'enum': fruit_names.Apple. Em seguida, na próxima instrução, utilize novamente o sinal (+) para concatenar o tipo com a mensagem e o índice onde está armazenado. Para obter o índice, primeiro precisamos convertê-lo em um inteiro fazendo typecasting. No tipo C#, a conversão é feita apenas usando parênteses. Dentro dos parênteses, escreva o tipo de dados no qual queremos typecast. Fora dos parênteses, escreva o nome da variável, ou seja, (int)var_name. Desta forma, podemos obter a mensagem com um valor enum e indexar onde ela está sendo armazenada.

Repita isso três vezes; apenas altere a mensagem e o tipo de enumeração. A enumeração torna o código bonito e limpo. A função Console.ReadKey() manterá o console ativo até que o fechemos. Se não usarmos esta instrução, o console piscará uma vez e depois desaparecerá.

Exemplo 2:

Neste programa, implementaremos a classe 'enum' simples atribuindo diferentes valores aos atributos da classe.


No segundo exemplo, criamos novamente um projeto para o aplicativo de console e definimos uma enumeração dentro da classe interna ‘Program’ com a palavra-chave ‘enum’. Desta vez contém a classe ‘itens’ com valores diferentes. Dentro da função main(), iremos acessar todos os elementos da classe enum ‘items’. Vamos utilizar o método console.writeLine(). Ele exibirá tudo o que tem nele. Primeiro, exiba uma mensagem e, em seguida, chame novamente a função Console.WriteLine() para exibir o primeiro item com a quantidade. Defina um texto que queremos exibir no terminal e concatene-o com os itens.cadeiras. Ele obterá o primeiro item (cadeiras) da classe enum 'itens'. Para obter a quantidade deste item, precisamos fazer um casting, pois os dados da classe enum estão na forma de uma string. Portanto, para acessar seus valores, primeiro digitamos cast. Para obter o valor de 'chairs', faça casting como (int)items.chairs. Caso contrário, obteremos apenas o item 'cadeiras' e não seu valor. Aqui, se notamos, são usados ​​os símbolos ‘\n’ e ‘\t’. Usando '\t', damos um espaço de tabulação e usando o '\n' moveremos o cursor para a próxima linha. Repita este procedimento duas vezes. Temos que apenas atualizar os valores de enumeração. No final, basta escrever o console.ReadKey() para manter o console ativo para que possamos ver a saída.

Exemplo 3:

Vamos utilizar o enum 'flag' neste cenário.


Na enumeração simples, podemos atribuir apenas um valor ao membro da classe enum. Mas com a enumeração de flag, podemos atribuir mais de um valor a um membro da classe enum. Esse tipo de enumeração é útil quando lidamos com diferentes escolhas e quando temos mais de um valor. Para usar a enumeração de flag, antes de definir uma classe enum, temos que escrever [flags] e depois escrever a classe enum 'flag_example'. Agora, dentro dessa classe, podemos facilmente atribuir mais de um valor a um membro. Neste exemplo, atribuímos dois valores ao atributo ‘driver’ e separamos os dois valores usando o operador (|). Em seguida, na função main(), declare uma variável ‘var flags’. Para mostrar mais de um item no console, utilize o operador ou (|) e chame os itens de enumeração com o nome da classe e o nome do item. Para exibir uma mensagem, invoque o método Console.WriteLine(). Para representar o valor do sinalizador, escreva 'flag' em outro Console.Write(). No próximo comando é chamada a função Console.ReadKey() que manterá o console aberto até que o fechemos.

Conclusão

Neste guia, aprendemos sobre enumeração, o que é e como podemos utilizá-la na linguagem C#. A enumeração torna o código simples e legível. Porque os valores na classe enum não podem ser alterados. Isso nos traz benefícios quando estamos lidando com esse tipo de dados que não requer alteração de valores. Discutimos a sintaxe e os tipos de enumeração com a ajuda de diferentes códigos. A enumeração ocupa menos memória e é fácil de usar.