Java

Tutorial de Java Enum

Tutorial de Java Enum
Java enum é um tipo especial de Java que é definido por uma classe Java. Também é chamado de tipo de enumeração Java. É introduzido primeiro no Java versão 5, que é usado principalmente para definir a coleção de constantes. O tipo de segurança de compilação é garantido usando o tipo enum. Então, quando todos os valores possíveis da variável são conhecidos antes do tempo de compilação, então é melhor usar o tipo enum. Ele define uma classe que sempre se estende de java.lang.Enum. Como o tipo enum pode ser declarado e usado em Java é mostrado neste tutorial.

Sintaxe:

public enum enum_name
valor1, valor2,… valorN

Aqui, enum palavra-chave é usada para declarar o tipo de enumeração e os valores serão qualquer valor constante.  Diferentes usos do tipo enum em Java são mostrados na próxima parte deste tutorial.

Exemplo 1: declarar e iterar valores enum

Como os valores enum podem ser definidos e acessados ​​usando o loop 'for' é mostrado no exemplo a seguir. Aqui, os nomes de sete dias da semana na forma abreviada são atribuídos como valores enum. Em seguida, o loop 'for' é usado para iterar cada valor dos dias da semana e imprimir cada valor em cada linha como saída.

public class enum1
// Defina o tipo de enum
public enum weekdays
Dom, Seg, Ter, Quarta, Qui, Sex, Sáb

// método main ()
public static void main (String [] args)
Sistema.Fora.println ("A forma abreviada de 7 dias da semana é:");
// Iterando os valores de enum
para (dia da semana: dias da semana.valores ())
Sistema.Fora.println (dia);


Resultado:

A seguinte saída aparecerá após a execução do código.

Exemplo 2: Usando enum na instrução if-else

O exemplo a seguir mostra o uso da variável enum com a instrução if-else-if. Aqui, uma variável enum chamada cursos é declarado com códigos de quatro cursos como valores. A classe contém um construtor que irá inicializar a variável chamada curso por qualquer valor enum. Aqui, um código de curso será fornecido no momento da criação do objeto, e será verificado com cada condição 'se' e imprimir a mensagem onde a condição retorna verdadeira. Se todas as condições retornarem falsas, a mensagem da seção else será impressa.

public class enum2
// Defina o tipo de enum
cursos public enum
CSE101, CSE205, CSE308, CSE407

// Declara uma variável do tipo enum
curso de cursos;
// Declare o construtor
public enum2 (cursos)
esta.curso = curso;

uma
public static void main (String [] args)
// Declara um objeto
enum2 object1 = new enum2 (cursos.CSE205);
// Verifique o valor do curso
if (objeto1.curso == cursos.CSE101)
Sistema.Fora.print ("O nome do curso é Fundamental em Informática");
else if (object1.curso == cursos.CSE205)
Sistema.Fora.print ("O nome do curso é Estrutura de Dados");
else if (object1.curso == cursos.CSE308)
Sistema.Fora.print ("O nome do curso é Sistema Operacional");
else if (object1.curso == cursos.CSE407)
Sistema.Fora.print ("O nome do curso é Programação Unix");
senão
Sistema.Fora.print ("Código do curso não existe");

Resultado:

No código acima, valor enum, CSE205 é fornecido no momento da criação do objeto que correspondeu à segunda condição 'se' e imprimiu a mensagem, “O nome do curso é Estrutura de Dados.”

Exemplo-3: usando enum com construtor e método

Como o construtor enum e o método enum podem ser definidos e usados ​​em java são mostrados no exemplo a seguir. Os doze valores enum com códigos são definidos com os doze meses na forma abreviada. Um construtor de um enum com um parâmetro é declarado no código que inicializa a variável inteira privada chamada mCode. Um método enum chamado readMCode () é declarado para retornar os valores de mCode. No a Principal() método, seis variáveis ​​são declaradas e inicializadas com uma string vazia para armazenar os valores enum específicos com base nos valores de caso de comutação. Aqui, o loop 'for' é usado para iterar cada valor enum e declarar um objeto enum com base em cada valor. Quando qualquer objeto enum for criado, o código do valor enum correspondente será inicializado para mCode. O valor de retorno do readMCode () método será usado na mudança para combinar com os valores de caso. Aqui, um determinado bloco de declarações é definido para dois valores de caso. Por exemplo, 0 e 1 serão retornados como mCode pelos meses, JAN e FEV. Os nomes desses dois meses serão armazenados na variável s1 e imprimiu o valor combinando com outra string. A mesma tarefa será realizada com as outras cinco variáveis, s2, s3, s4, s5, e s6, pelos outros dez meses.

De acordo com o código, Inverno será impresso para o mês JAN e FEV. Primavera será impresso para o mês de MAR e ABR. Verão será impresso para o mês de MAIO e JUN. Estação chuvosa será impresso para o mês de JUL e AGO. Outono será impresso para o mês de SEP e OCT e Final de Outono será impresso para o mês de NOV e DEZ.

public class enum3
public enum Meses
JAN (0), FEV (1), MAR (2), ARP (3), MAIO (4), JUN (5),
JUL (6), AGO (7), SEP (8), OUT (9), NOV (10), DEZ (11);
private int mCode;
// construtor enum
Meses (int mCode)
esta.mCode = mCode;

// método enum
public int readMCode ()
devolva isso.mCode;


// método main ()
public static void main (String [] args)
// Inicializar variáveis
String s1 = "", s2 = "", s3 = "", s4 = "", s5 = "", s6 = "";
// Iterando os valores de enum
por (meses mês: meses.valores ())
// Declare o objeto enum
Meses m = mês;
interruptor (m.readMCode ())

caso 0:
caso 1:
if (s1.é igual a(""))
s1 = mês.para sequenciar();
senão
s1 + = "e" + mês.para sequenciar();
Sistema.Fora.println (s1 + "são inverno.");

pausa;
caso 2:
caso 3:
if (s2.é igual a(""))
s2 = mês.para sequenciar();
senão
s2 + = "e" + mês.para sequenciar();
Sistema.Fora.println (s2 + "são Spring.");

pausa;
caso 4:
caso 5:
if (s3.é igual a(""))
s3 = mês.para sequenciar();
senão
s3 + = "e" + mês.para sequenciar();
Sistema.Fora.println (s3 + "são verão.");

pausa;
caso 6:
caso 7:
if (s4.é igual a(""))
s4 = mês.para sequenciar();
senão
s4 + = "e" + mês.para sequenciar();
Sistema.Fora.println (s4 + "são estação chuvosa.");

pausa;
caso 8:
caso 9:
if (s5.é igual a(""))
s5 = mês.para sequenciar();
senão
s5 + = "e" + mês.para sequenciar();
Sistema.Fora.println (s5 + "são outono.");

pausa;
caso 10:
caso 11:
if (s6.é igual a(""))
s6 = mês.para sequenciar();
senão
s6 + = "e" + mês.para sequenciar();
Sistema.Fora.println (s6 + "são no final do outono.");

pausa;



Resultado:

A seguinte saída aparecerá após a execução do código acima.

Conclusão:

Quando precisamos trabalhar com os dados constantes, é melhor usar a variável enum. Os diferentes usos do tipo de dados enum são explicados neste tutorial para aprender os benefícios de usar o tipo de enumeração em Java.

O cursor pula ou se move aleatoriamente enquanto digita no Windows 10
Se você descobrir que o cursor do mouse pula ou se move por conta própria, de forma automática e aleatória ao digitar em um laptop ou computador com W...
Como reverter a direção de rolagem do Mouse e Touchpads no Windows 10
Mouse e Touchpads não apenas torna a computação mais fácil, mas mais eficiente e menos demorada. Não podemos imaginar uma vida sem esses dispositivos,...
Como alterar o ponteiro do mouse e tamanho do cursor, cor e esquema no Windows 10
O ponteiro do mouse e o cursor no Windows 10 são aspectos muito importantes do sistema operacional. Isso também pode ser dito para outros sistemas ope...