Avatar ·

Como obter valor de enum por string em Java

Olá a todos! Sou novo em Java e encontrei um problema ao trabalhar com enumerações (enum). Tenho este enum para status de pedido:\n\n```java\npublic enum OrderStatus {\n NEW, \n PROCESSING, \n SHIPPED, \n DELIVERED, \n CANCELLED\n}\n```\n\nRecebo uma string do banco de dados, por exemplo "PROCESSING", e preciso convertê-la de volta para o valor enum `OrderStatus.PROCESSING`. Tentei usar uma simples conversão de tipos, mas não funciona:\n\n```java\nString statusStr = "PROCESSING";\nOrderStatus status = (OrderStatus) statusStr; // Erro de compilação\n```\n\nTambém tentei usar `valueOf()`, mas quando a string não corresponde a nenhum valor enum, é lançada uma exceção `IllegalArgumentException`. Por exemplo, se o usuário digitou "processing" (com letra minúscula)