JavaPOOintermediario

Enum

Enums em Java são muito usados para representar conjuntos fixos de opções, como dias da semana, status de pedido ou cores. Em código real, você frequentemente precisa associar comportamentos a esses valores — por exemplo, verificar se um dia é útil para calcular prazos de entrega. Métodos dentro do enum (como isUtil()) evitam espalhar lógicas condicionais pelo sistema, mantendo a regra de negócio centralizada.

O PROBLEMA

DiaSemana enum com isUtil(). Use com switch.

EXEMPLO

DiaSemana.SEGUNDA.isUtil() → true

SOBRE O CONCEITO

Um enum pode conter métodos, atributos e construtores. No exercício, DiaSemana define o método isUtil() que retorna true para dias de semana (SEGUNDA a SEXTA) e false para SÁBADO e DOMINGO. O erro comum de valueOf com caixa errada (ex.: DiaSemana.valueOf('segunda')) gera IllegalArgumentException, pois valueOf exige o nome exato da constante (maiúsculo, como SEGUNDA). O uso de switch com o enum é mais seguro que if/else, pois o compilador avisa se algum caso for esquecido. Só use return dentro dos cases para evitar repetições.

RESOLUÇÃO

Mais exercícios de POO

JAP004 · BásicoMétodo com retornoJAP005 · BásicoMúltiplos objetosJAP011 · IntermediárioHerança simplesJAP002 · BásicoConstrutor
Ver todos os exercícios de Java