Em Java, enumerações são implementadas como tipos de classe, permitindo comportamentos semelhantes ao de outras classes.
É possível adicionar construtores, métodos, variáveis de instância e até implementar interfaces em uma enumeração.
Métodos predefinidos em enumerações:
values(): Retorna um array contendo todas as constantes da enumeração.valueOf(String str): Retorna a constante de enumeração que corresponde ao valor passado como string.Exemplo:
Transport.valueOf("TRAIN")retorna a constanteTRAINdo tipoTransport.Esses recursos tornam enumerações Java mais poderosas do que as de outras linguagens.
// Usa os métodos de enumeração internos.
// Enumeração de meios de transporte.
 enum Transport {
  CAR, TRUCK, AIRPLANE, TRAIN, BOAT
 }
 class EnumDemo2 {
  public static void main(String args[])
  {
    Transport tp;
    System.out.println("Here are all Transport constants");
    // usa values()
    Transport allTransports[] = Transport.values(); // Obtém um array de constantes Transport.
 for(Transport t : allTransports)
      System.out.println(t);
System.out.println();
// usa valueOf()
    tp = Transport.valueOf("AIRPLANE"); //Obtém a constante de nome AIRPLANE.
 }
 }
O método values() pode ser usado diretamente em um laço for-each para percorrer todas as constantes de uma enumeração.
for (Transport t : Transport.values())
System.out.println(t);O método valueOf(String) retorna a constante da enumeração correspondente ao nome passado como string.
tp = Transport.valueOf("AIRPLANE");
- Não é necessário criar uma variável intermediária para armazenar o array retornado por 
values(). 
    
Top comments (0)