Avatar ·

Como gerar uma string alfanumérica aleatória em Java?

Olá a todos! Estou escrevendo uma pequena aplicação para geração de senhas e identificadores temporários. Preciso criar strings aleatórias contendo apenas letras latinas (a-z, A-Z) e dígitos (0-9). Por exemplo, algo como "k3R9tB2x" ou "A7fD1qP8". Tentei usar UUID, mas ele gera strings com hífens, que não preciso. Tentei escrever minha própria lógica baseada em Math.random(), mas o código fica volumoso e não confiável — às vezes gera apenas letras ou apenas dígitos. Aqui está o que fiz: ```java String generateRandomString(int length) { String chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; StringBuilder sb = new StringBuilder(); for (int i = 0; i < length; i++) { int index = (int)(Math.random() * chars.length()); sb.append(chars.charAt(index)); } return sb.toString(); } ``` Isso funciona, mas não tenho certeza se está correto em termos de performance e segurança. Talvez existam ferramentas embutidas em Java para isso?