Cómo generar un número aleatorio entre 1 y 10 en Java
-
random.nextInt()
para generar un número aleatorio entre 1 y 10 -
Math.random()
para generar números aleatorios entre 1 y 10 -
ThreadLocalRandom.current.nextInt()
para generar números aleatorios entre 1 y 10
Veremos los pasos para generar un número aleatorio entre 1 y 10 al azar en Java. Veremos tres paquetes o clases de Java que pueden generar un número aleatorio entre 1 y 10 y cuál de ellos es el más adecuado para usar.
random.nextInt()
para generar un número aleatorio entre 1 y 10
java.util.Random
es un paquete que viene con Java, y podemos usarlo para generar un número aleatorio entre un rango. En nuestro caso, el rango es de 1 a 10.
Este paquete tiene una clase Random
que nos permite generar múltiples tipos de números, ya sea un int
o un float
.
import java.util.Random;
public class Main {
public static void main(String[] args) {
int min = 1;
int max = 10;
Random random = new Random();
int value = random.nextInt(max + min) + min;
System.out.println(value);
}
}
Resultado:
6
Para mostrar que la técnica anterior funciona y genera números aleatorios cada vez, podemos usar un bucle para generar un nuevo número aleatorio hasta que termine. Como no tenemos un gran rango de números, los números aleatorios pueden repetirse.
import java.util.Random;
public class Main {
public static void main(String[] args) {
Random random = new Random();
for (int i = 1; i <= 10; i++) {
int value = random.nextInt((10 - 1) + 1) + 1;
System.out.println(value);
}
}
Resultado:
10
7
2
9
2
7
6
4
9
Math.random()
para generar números aleatorios entre 1 y 10
Otra clase que puede ayudarnos a lograr nuestro objetivo es Math
con múltiples funciones estáticas para aleatorizar los números. Vamos a usar el método random()
. Devuelve un valor aleatorio de tipo float
. Es por eso que tenemos que ponerlo en una int
.
public class Main {
public static void main(String[] args) {
int min = 1;
int max = 10;
for (int i = min; i <= max; i++) {
int getRandomValue = (int) (Math.random() * (max - min)) + min;
System.out.println(getRandomValue);
}
}
Resultado:
5
5
2
1
6
9
3
6
5
7
ThreadLocalRandom.current.nextInt()
para generar números aleatorios entre 1 y 10
El último método de nuestra lista para obtener números aleatorios entre el 1 y el 10 es usar la clase ThreadLocalRandom
que se introdujo en el JDK 7 para programas multiproceso.
Podemos ver más abajo que tenemos que llamar al método current()
de la clase ya que queremos que los números aleatorios se generen en el hilo actual.
import java.util.concurrent.ThreadLocalRandom;
public class Main {
public static void main(String[] args) {
int min = 1;
int max = 10;
for (int i = 1; i <= 10; i++) {
int getRandomValue = ThreadLocalRandom.current().nextInt(min, max) + min;
System.out.println(getRandomValue);
}
}
}
Resultado:
3
4
5
8
6
2
6
10
6
2
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn