A palavra-chave enum
em Java é usada para definir um tipo enumerado. Um tipo enumerado é um conjunto de constantes nomeadas que representam um grupo fixo de valores relacionados. Usar enums ajuda a melhorar a legibilidade e a segurança do código, pois permite que você defina um conjunto fixo de valores possíveis para uma variável, em vez de usar constantes de inteiros ou strings.
Definição de um Enum
A sintaxe básica para definir um enum é a seguinte:
public enum NomeDoEnum {
CONSTANTE1,
CONSTANTE2,
CONSTANTE3;
}
Exemplo de Enum
Aqui está um exemplo simples de como definir e usar um enum:
public class ExemploEnum {
// Definição do enum
public enum DiaDaSemana {
SEGUNDA, TERÇA, QUARTA, QUINTA, SEXTA, SÁBADO, DOMINGO
}
public static void main(String[] args) {
// Uso do enum
DiaDaSemana hoje = DiaDaSemana.SEGUNDA;
switch (hoje) {
case SEGUNDA:
System.out.println("Hoje é segunda-feira.");
break;
case TERÇA:
System.out.println("Hoje é terça-feira.");
break;
case QUARTA:
System.out.println("Hoje é quarta-feira.");
break;
case QUINTA:
System.out.println("Hoje é quinta-feira.");
break;
case SEXTA:
System.out.println("Hoje é sexta-feira.");
break;
case SÁBADO:
System.out.println("Hoje é sábado.");
break;
case DOMINGO:
System.out.println("Hoje é domingo.");
break;
default:
System.out.println("Dia inválido.");
break;
}
}
}
Saída:
Hoje é segunda-feira.
Posts recentes
Explicação do Exemplo
- Definição do Enum:
DiaDaSemana
é um enum que define um conjunto de constantes representando os dias da semana. - Uso do Enum: A variável
hoje
é do tipoDiaDaSemana
e é atribuída aDiaDaSemana.SEGUNDA
. - Estrutura de Controle: O
switch
é usado para executar diferentes blocos de código dependendo do valor dehoje
.
Características dos Enums
- Tipos de Dados: Enums são uma forma especial de classe que pode ter construtores, métodos e variáveis. Eles são mais fortes que constantes simples e ajudam a garantir que apenas valores válidos sejam usados.
- Métodos e Construtores: Você pode adicionar métodos e construtores aos enums para associar dados adicionais e comportamentos com as constantes.
- Métodos Predefinidos: Enums fornecem métodos predefinidos como
values()
(retorna um array contendo todas as constantes do enum) evalueOf(String nome)
(retorna a constante do enum com o nome especificado).
Exemplo com Métodos e Construtores
public enum DiaDaSemana {
SEGUNDA("Segunda-feira"),
TERÇA("Terça-feira"),
QUARTA("Quarta-feira"),
QUINTA("Quinta-feira"),
SEXTA("Sexta-feira"),
SÁBADO("Sábado"),
DOMINGO("Domingo");
private String nomeCompleto;
DiaDaSemana(String nomeCompleto) {
this.nomeCompleto = nomeCompleto;
}
public String getNomeCompleto() {
return nomeCompleto;
}
}
public class ExemploEnumAvancado {
public static void main(String[] args) {
for (DiaDaSemana dia : DiaDaSemana.values()) {
System.out.println(dia + ": " + dia.getNomeCompleto());
}
}
}
Saída:
SEGUNDA: Segunda-feira
TERÇA: Terça-feira
QUARTA: Quarta-feira
QUINTA: Quinta-feira
SEXTA: Sexta-feira
SÁBADO: Sábado
DOMINGO: Domingo
Resumo
- Palavra-chave:
enum
- Uso: Define um tipo enumerado com um conjunto fixo de constantes
- Características: Suporta métodos, construtores e variáveis; métodos predefinidos como
values()
evalueOf()
Enums são uma maneira poderosa e segura de trabalhar com um conjunto fixo de valores em Java, oferecendo uma forma mais estruturada e legível de lidar com constantes.