-
Uma enumeração é uma lista de constantes nomeadas que define um novo tipo de dado.
-
Um objeto de um tipo de enumeração só pode conter os valores definidos pela lista.
-
Enumerações permitem criar um tipo de dado com um número fixo de valores válidos.
-
Exemplos do cotidiano incluem: moedas dos Estados Unidos (penny, nickel, dime, half-dollar, dollar), meses do ano (janeiro a dezembro), dias da semana (domingo a sábado).
-
Na programação, enumerações são úteis para definir conjuntos de valores que representam grupos de itens.
-
Exemplos em programação: Códigos de status como sucesso, em espera, falha, nova tentativa.
-
No passado, conjuntos de valores eram definidos com variáveis do tipo final, mas as enumerações oferecem uma abordagem mais estruturada.
Fundamentos da enumeração
Criação de enumerações:
-
Enumerações são criadas com a palavra-chave enum.
enum Transport {
CAR, TRUCK, AIRPLANE, TRAIN, BOAT
} -
Os identificadores (como CAR, TRUCK) são constantes de enumeração.
Características das constantes de enumeração:
-
São implicitamente públicas e estáticas.
-
São autotipadas, ou seja, têm o mesmo tipo da enumeração que as contém.
Uso de enumerações:
-
Não é possível instanciar uma enumeração com new.
-
Declaração de variável do tipo enumeração
Transport tp;
- Atribuição de valor à variável:
tp = Transport.AIRPLANE;
Comparação de constantes de enumeração:
- Pode ser feita com o operador ==.
if (tp == Transport.TRAIN) {
// ...
}
Uso em instruções switch:
-
É possível usar enumerações em switch.
-
Nas instruções case, as constantes são usadas sem qualificar com o nome da enum.
switch(tp) {
case CAR:
// ...
case TRUCK:
// ...
}
Exibição de constantes de enumeração:
- Quando exibidas, elas mostram seu nome.
System.out.println(Transport.BOAT); // Saída: BOAT
Exemplo:
// Enumeração de meios de transporte.
enum Transport {
CAR, TRUCK, AIRPLANE, TRAIN, BOAT //Declara uma enumeração.
}
class EnumDemo {
public static void main(String args[])
{
Transport tp; //Declara uma referência Transport
tp = Transport.AIRPLANE; //Atribui a tp a constante AIRPLANE
// Exibe um valor da enum.
System.out.println("Value of tp: " + tp);
System.out.println();
tp = Transport.TRAIN;
// Compara dois valores da enum.
if(tp == Transport.TRAIN)
System.out.println("tp contains TRAIN.\n");
// Usa uma enum para controlar uma instrução switch.
switch(tp) {
case CAR:
System.out.println("A car carries people.");
break;
case TRUCK:
System.out.println("A truck carries freight.");
break;
case AIRPLANE:
System.out.println("An airplane flies.");
break;
case TRAIN:
System.out.println("A train runs on rails.");
break;
case BOAT:
System.out.println("A boat sails on water.");
break;
}
}
}
-
As constantes de enumeração geralmente são escritas em maiúsculas, mas isso não é obrigatório.
-
O uso de maiúsculas segue a tradição de variáveis final que costumam usar esse estilo.
-
É uma questão de estilo, e programadores podem optar por outras formas.
-
Os exemplos do texto utilizam maiúsculas para manter consistência.
原文链接:Enumerações
暂无评论内容