Avatar ·

Comment générer une chaîne alphanumérique aléatoire en Java ?

Bonjour à tous ! J'ai besoin d'aide pour générer une chaîne aléatoire contenant uniquement des chiffres et des lettres (latin, sans distinction de casse). Je développe une petite application pour générer des mots de passe et des codes de confirmation. J'ai essayé d'utiliser `Math.random()` et la concaténation de caractères, mais le code devient horrible et peu fiable. Voici ce que j'ai : ```java public static 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(); } ``` Cela fonctionne, mais l'utilisation de `Math.random()` me gêne — j'ai entendu dire que ce n'est pas la méthode la plus sûre pour la cryptographie. De plus, il arrive parfois d'obtenir des motifs répétitifs, ce qui est étrange. Pouvez-vous me dire comment générer correctement des chaînes alphanumériques aléatoires en Java ? Il faut que : 1