Saltar al contenido

Obtener números aleatorios en Java

Solución:

La primera solución es utilizar el java.util.Random clase:

import java.util.Random;

Random rand = new Random();

// Obtain a number between [0 - 49].
int n = rand.nextInt(50);

// Add 1 to the result to get a number from the required range
// (i.e., [1 - 50]).
n += 1;

Otra solución es usar Math.random():

double random = Math.random() * 49 + 1;

o

int random = (int)(Math.random() * 50 + 1);

int max = 50;
int min = 1;

1. Utilizando Math.random ()

double random = Math.random() * 49 + 1;
or
int random = (int )(Math.random() * 50 + 1);

Esto le dará un valor de 1 a 50 en caso de int o 1.0 (inclusive) a 50.0 (exclusivo) en caso de doble

¿Por qué?

El método random () devuelve un número aleatorio entre 0.0 y 0.9 …, lo multiplica por 50, por lo que el límite superior se convierte en 0.0 a 49.999 … cuando agrega 1, se convierte en 1.0 a 50.999 …, ahora cuando trunca a int, obtienes de 1 a 50. (gracias a @rup en los comentarios). impresionante artículo de leepoint sobre ambos enfoques.

2. Usando la clase Random en Java.

Random rand = new Random(); 
int value = rand.nextInt(50); 

Esto dará un valor de 0 a 49.

De 1 a 50: rand.nextInt((max - min) + 1) + min;

Fuente de algunas maravillas de Java Random.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *