Jak generować liczby losowe w Javie

Jak generować liczby losowe w Javie

Podczas programowania w Javie mogą wystąpić przypadki, w których programista musi przeanalizować statystyki na podstawie prawdopodobieństwa lub powiązać liczby losowe w zakresie zestawu z określonymi wartościami, aby uzyskać prawdopodobny wynik, który jest prawdopodobny. W takim przypadku scenariusze generowanie liczb losowych w Javie jest pomocne w pobieraniu wielu wartości za pomocą precyzyjnego kodu.

Ten artykuł ilustruje podejścia do generowania liczb losowych za pomocą Java.

Jak generować liczby losowe za pomocą Java?

Aby wygenerować liczby losowe w Javie, wykorzystaj następujące podejścia:

    • "Matematyka.losowy()" Metoda
    • "Jawa.Util.Losowy" Klasa
    • "ThreadLocalrandom" Klasa

Podejście 1: Generuj liczby losowe w Javie za pomocą „Matematyki.Metoda losowa () ”

„„Matematyka.losowy()„Metoda zwraca liczby losowe większe lub równe„0”I mniej niż„1". Tę metodę można wykorzystać do po prostu generowania liczb losowych odpowiednio w zakresie domyślnym i określonym.

Przykład 1: Generuj liczby losowe w automatu Javairycznie

W tym przykładzie „Matematyka.losowy()„Metoda może być stosowana do automatycznego generowania liczb losowych w zakresie domyślnego:

System.na zewnątrz.println („Pierwsza liczba losowa to:”
+ Matematyka.losowy());
System.na zewnątrz.println („druga liczba losowa:”
+ Matematyka.losowy());


W powyższej demonstracji po prostu zastosuj „Matematyka.losowy()„Metoda dwa razy w celu wygenerowania liczb losowych w zakresie„0" Do "<1”I wyświetl je.

Wyjście



W powyższym wyjściu można zaobserwować, że liczby losowe są generowane zgodnie z zakresem domyślnym.

Przykład 2: Generuj liczby losowe w Javie w określonym zakresie

W tym konkretnym przykładzie „Matematyka.losowy()„Metoda można zastosować do pobierania liczb losowych w określonym zakresie:

int start = 10;
int end = 30;
int b = (int) (matematyka.Random ()*(końcowy start+ 1)+ start);
System.na zewnątrz.println (b);


Wykonaj poniższe kroki podane w powyższym kodzie:

    • Po pierwsze, zainicjuj wartości liczb całkowitych w celu wygenerowania liczb losowych między tym zakresem.
    • Następnie skojarz „Matematyka.losowy()„Metoda z„int”Typ danych, aby zwrócić wynikową liczbę losową jako liczbę całkowitą.
    • Algorytm:5*(30 - 10 + 1) + 10) = „20.5"
    • W powyższym algo „5”Wskazuje na wygenerowaną domyślną liczbę losową, a te ostatnie obliczenia odbywa się w celu zgromadzenia wygenerowanej liczby losowej w określonym zakresie I.e ”10<20.5<30".

Wyjście



Można zauważyć, że za każdym razem, gdy liczba losowa jest generowana w określonym zakresie.

Podejście 2: Wygeneruj liczbę losową w Javie za pomocą „Java.Util.Klasa losowa ”

„„Jawa.Util.Losowy„Klasa może być używana do powiązania różnych metod i zwrócenia odpowiedniej wartości losowej. Powiązane "NextIt ()”Metoda przyjmuje powiązanie parametrów, które powinno być dodatnie i wynika z odpowiedniej liczby losowej. „„Nextfloat ()”Metoda generuje losowe wartości w zakresie 0.0 i 1.0. Natomiast "Nextboolean ()„Metoda skanuje token wkładu w wartość logiczną i daje tę wartość.

W tym podejściu metody te można wykorzystać do generowania losowej liczby liczbowej i losowej w zakresie końcowym i losowej wartości logicznej.

Składnia

Public Boolean NextInt (liczba całkowita)


W powyższej składni „liczba całkowita".

public Float Nextfloat ()


Powyższa składnia wskazuje na losowy pływak, który należy wygenerować.

Przykład

Przeglądmy kod poniżej demonstrowanego poniżej:

Random Random = new Random ();
int x = losowy.NextInt (50);
float f = losowy.Nextfloat (50);
boolean m = losowy.Nextboolean ();
System.na zewnątrz.println (x);
System.na zewnątrz.println (f);
System.na zewnątrz.println („wartość logiczna to:”+m);

Zgodnie z powyższym kodem-snippet zastosuj następujące kroki:

    • Po pierwsze, utwórz nowy losowy obiekt za pośrednictwem „nowy”Słowo kluczowe i„Losowy()”Konstruktor odpowiednio.
    • W następnym kroku skojarz „NextIt ()„Metoda z utworzonym obiektem do generowania losowej liczby całkowitej w określonej liczbie całkowitej jako jej parametr (metoda), i.mi., "50".
    • Podobnie zastosuj „Nextfloat ()”Metoda zwrócenia losowego pływaka w dostarczonym zakresie.
    • Teraz zastosuj „Nextboolean ()„Metoda wyświetlania losowo generowanej wartości logicznej., I.mi., "prawda fałsz".
    • Na koniec wyświetl odpowiednio odpowiednią liczbę przypadkowych, zmiennoprzecinkowych i wartości logicznej.

Wyjście


Podejście 3: Wygeneruj liczbę losową w Javie za pomocą klasy „ThreadLocalrandom”

„„ThreadLocalrandom”Klasa jest wykorzystywana do generowania/tworzenia strumienia pseudo-lodowników. Takie podejście można również wdrożyć, aby zwrócić odpowiednie losowe liczby całkowite, pływaki i wartość logiczną w danym zakresie.

Przykład

Poniższy przykład ilustruje podaną koncepcję:

liczba int = ThreadLocalrandom.aktualny().NextInt (0 100);
Double FloatNum = ThreadLocalrandom.aktualny().NextDouble (0 100);
boolean bool = ThreadLocalrandom.aktualny().Nextboolean ();
System.na zewnątrz.println („losowo generowana wartość liczb całkowita to:”+liczba);
System.na zewnątrz.println („losowo generowana podwójna wartość to:”+floatnum);
System.na zewnątrz.println („losowo generowana wartość logiczna to:”+bool);


Zgodnie z danym kodem:

    • Po pierwsze, skojarz „ThreadLocalrandom„Klasa z„NextIt ()”Metoda zwrócenia losowo wygenerowanej liczby całkowitej w danym zakresie.
    • Następnie powtórz powyższy krok w celu uzyskania losowego podwójnego w dostarczonym zakresie i losowej wartości logicznej.
    • Na koniec wyświetl wszystkie omawiane losowo wygenerowane wartości na konsoli.

Wyjście



Chodziło o generowanie losowych liczb w Javie.

Wniosek

Aby wygenerować losowe liczby w Javie, zastosuj „Matematyka.losowy()„Metoda,„Jawa.Util.Losowy„Klasa lub„ ”ThreadLocalrandom" klasa. Podejścia te można wykorzystać do po prostu wygenerowania liczby losowej w zakresie domyślnym, losowej liczby całkowitej lub pływania w określonym zakresie lub odpowiednio losowej wartości logicznej. Ten blog opracował podejścia do generowania liczb losowych za pomocą Java.