Skip to content

Instantly share code, notes, and snippets.

@parzibyte
Created August 25, 2020 18:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save parzibyte/7e6e2f6d82dc14a434d245aa166c2382 to your computer and use it in GitHub Desktop.
Save parzibyte/7e6e2f6d82dc14a434d245aa166c2382 to your computer and use it in GitHub Desktop.
import java.util.concurrent.ThreadLocalRandom;
public class Main {
// https://parzibyte.me/blog
public static void main(String[] args) {
int longitud = 12;
String cadena = cadenaAleatoria(longitud);
System.out.printf("Cadena aleatoria de %d caracteres: %s\n", longitud, cadena);
}
public static String cadenaAleatoria(int longitud) {
// El banco de caracteres
String banco = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
// La cadena en donde iremos agregando un carácter aleatorio
String cadena = "";
for (int x = 0; x < longitud; x++) {
int indiceAleatorio = numeroAleatorioEnRango(0, banco.length() - 1);
char caracterAleatorio = banco.charAt(indiceAleatorio);
cadena += caracterAleatorio;
}
return cadena;
}
public static int numeroAleatorioEnRango(int minimo, int maximo) {
// nextInt regresa en rango pero con límite superior exclusivo, por eso sumamos 1
return ThreadLocalRandom.current().nextInt(minimo, maximo + 1);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment