Come generare numero casuale all'interno di un intervallo specificato in Java

Come generare numero casuale all'interno di un intervallo specificato in Java
Il processo di estrazione di un numero usando qualsiasi algoritmo matematico è chiamato generazione di numeri casuali. Nella programmazione Java, alcune applicazioni richiedono spesso la generazione di numeri interi casuali, ad esempio l'OTP (una password di tempo). Molte applicazioni generano numeri casuali per utilizzare l'OTP per convalidare l'utente.

Questo post spiegherà i metodi per generare numeri casuali nell'intervallo specificato in Java.

Come generare numero casuale all'interno di un intervallo specificato in Java?

Per generare un numero casuale all'interno di un intervallo specificato, è possibile utilizzare:

  • Matematica.Metodo casuale ()
  • Casuale.metodo NextInt ()
  • Casuale.NextFloat () Metodo
  • Casuale.Metodo ints ()

Cerchiamo di capire il funzionamento di questi metodi con esempi.

Metodo 1: generare un doppio numero casuale in un intervallo specificato usando la matematica.Metodo casuale ()

In questa sezione, useremo il "Matematica.casuale()"Metodo per generare numeri casuali. Il metodo casuale () è il metodo statico della classe matematica, quindi può essere chiamato direttamente con il nome della classe e genera un "Doppio"Digitare il numero casuale tra l'intervallo dato.

Sintassi
Per generare un numero casuale all'interno di un intervallo particolare usando la matematica.Metodo casuale (), seguire la sintassi data:

Matematica.casuale () * (max_num - min_num)

IL "max_num"È il valore massimo mentre il"min_num"È il valore minimo. Entrambi i valori vengono aggiunti per fornire un intervallo.

Esempio
In questo esempio, prima creeremo due variabili di tipo intero, "max_num" E "min_num"E assegna i seguenti valori:

int min_num = 14;
int max_num = 150;

Creeremo un'altra variabile di tipo intero "rand_num"Che memorizza un numero casuale tra"0" A "136"; Come utilizzando la formula specificata, quando sottraggiamo min_num dal max_num, restituirà 136. Quindi, il numero casuale verrà generato tra 0 e 136:

Double rand_num = matematica.casual () * (max_num - min_num);

Stampa il valore casuale generato usando "Sistema.fuori.println ()" metodo:

Sistema.fuori.println ("Numero casuale:"+ rand_num);

L'output visualizza il doppio valore casuale "31.592 .. .”Tra il"0" A "136":

Ora, controlliamo il secondo metodo per generare un numero casuale del tipo INT.

Metodo 2: generare un numero casuale Int all'interno di un intervallo specificato usando casuali.metodo NextInt ()

Per generare un numero intero casuale in un intervallo specifico, utilizzare il "NextInt ()"Metodo della classe casuale Java. La classe casuale fornisce molti metodi per generare numeri casuali in qualsiasi tipo, come galleggiante, doppio, lungo e int.

In questa sezione, genereremo un numero casuale del tipo INT usando il metodo di classe casuale.

Sintassi
Seguire la sintassi data per generare un numero casuale di tipo intero usando la classe casuale:

Rand.NextInt (max_num - min_num) + min_num;

Qui, "Rand"È l'oggetto della classe casuale che invoca il"NextInt ()"Metodo passando"max_num" E "min_num"Come argomenti.

Esempio
In primo luogo, creeremo un'istanza della classe casuale chiamata "Rand":

Rand casuale = nuovo casuale ();

Successivamente, crea una variabile di tipo intero "X"Che memorizza il numero casuale generato invocando il"NextInt ()" metodo. Questo metodo genererà un numero casuale tra "14" A "136"Perché, secondo la formula data, quando sottraggiamo 14 da 150, tornerà 136. Quindi, il numero casuale verrà generato tra 14 e 136:

int x = rand.NextInt (max_num - min_num) + min_num;

Infine, stampare il numero casuale generato sulla console:

Sistema.fuori.println ("Numero casuale:"+ x);

Come potete vedere, "108"È il nostro numero casuale risultante:

Segui la procedura di seguito se si desidera generare un numero a punto galleggiante casuale.

Metodo 3: generare un numero casuale galleggiante all'interno di un intervallo specificato usando casuali.NextFloat () Metodo

"NextFloat ()"È un metodo della classe casuale che genera numeri casuali nei punti galleggianti. In questa sezione, genereremo un numero casuale in formato decimale con l'aiuto del metodo menzionato.

Sintassi
La sintassi descritta viene utilizzata per il casuale.NextFloat () Metodo:

Rand.NextFloat () * (max_num - min_num);

Qui, "Rand"È l'oggetto della classe casuale che invoca il"NextFloat ()"Metodo passando due numeri"max_num" E "min_num"Come parametri

Esempio
Invocheremo il "NextFloat ()"Metodo passando il già creato"max_num" E "min_num"Variabili come argomenti e memorizzarli nella variabile del tipo float"Casualval".

Float RandomVal = rand.NextFloat () * (max_num - min_num);

Stampa il valore a punto mobile casuale utilizzando il "Sistema.fuori.println ()" metodo:

Sistema.fuori.println (casualval);

L'output significa che abbiamo generato correttamente un numero di punto mobile all'interno di un intervallo specificato:

Se si desidera generare un elenco di numeri casuali in un intervallo specificato, segui la sezione data.

Metodo 4: generare un elenco di numeri casuali all'interno di un intervallo specificato usando casuali.Metodo ints ()

Per generare un elenco di numeri casuali all'interno di un intervallo specifico, il "int ()"Il metodo della classe casuale può essere utilizzato. Questo metodo restituisce un flusso di numeri interi generati casualmente fino a Infinity. Può essere utilizzato nell'intervallo specificato. Il metodo INTS () consente inoltre di limitare il numero di numeri interi specificando la dimensione del flusso.

Sintassi
La seguente sintassi del "int ()"Il metodo viene utilizzato per generare un elenco di numeri casuali all'interno di un intervallo specifico:

Rand.int (limit, min_num, max_num);

Qui, "Rand"È l'oggetto della classe casuale che invoca il"int ()"Metodo passando tre parametri,"max_num" E "min_num"E il limite che indica quanti numeri casuali dovrebbero essere presenti nell'elenco.

Esempio
Creeremo un oggetto "È"Del"Intstream"Interfaccia, che memorizzerà il flusso di numeri generati in modo casuale. Qui, passeremo "3"Come limite che significa che l'elenco risultante conterrà tre numeri:

IntStream is = rand.int (3, min_num, max_num);

Infine, stampare i numeri generati in modo casuale usando il "per ciascuno" ciclo continuo:

È.foreach (sistema.out :: println);

Produzione

Abbiamo raccolto tutte le informazioni essenziali per generare numeri casuali all'interno di un intervallo specificato in Java.

Conclusione

Per generare numeri casuali in un intervallo specificato, Java supporta metodi diversi, matematica.Metodo casuale (), casuale.metodo NextInt (), casuale.NextFloat () Metodo e casuale.Metodo ints (). È possibile utilizzare questi metodi per generare numeri casuali di qualsiasi tipo, come doppio, int, galleggiante e così via. Java supporta anche la generazione di un elenco di numeri casuali all'interno di un intervallo specifico usando il casuale.Metodo ints (). In questo post, abbiamo spiegato i metodi per generare numeri casuali all'interno di un intervallo specificato in Java con esempi.