DEV Community

FUNDAMENTOS JAVA
FUNDAMENTOS JAVA

Posted on

1

As enumerações Java são tipos de classe

  • 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 constante TRAIN do tipo Transport.

  • 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().

AWS Security LIVE!

Join us for AWS Security LIVE!

Discover the future of cloud security. Tune in live for trends, tips, and solutions from AWS and AWS Partners.

Learn More

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay