CodeGym/Blog Java/Random-PL/Metoda Java Random nextInt().
Autor
Jesse Haniel
Lead Software Architect at Tribunal de Justiça da Paraíba

Metoda Java Random nextInt().

Opublikowano w grupie Random-PL
Istnieje kilka opcji tworzenia generatora liczb pseudolosowych w języku Java. Jedną z takich opcji jest użycie klasy java.util.Random i metody nextInt() . W tym artykule porozmawiamy o metodzie Random nextInt() i podamy kilka przykładów kodu jej użycia.

Krótko o klasie java.util.Random

Jak powiedzieliśmy, klasa java.util.Random jest generatorem liczb pseudolosowych. Klasa jest reprezentowana przez dwóch konstruktorów
  • Random() — tworzy generator liczb przy użyciu unikalnego materiału siewnego

  • Random(long seed) — umożliwia ręczne określenie nasion

Ponieważ klasa tworzy liczbę pseudolosową, określając ziarno, określasz punkt początkowy losowej sekwencji. Otrzymasz te same losowe sekwencje. Aby uniknąć takiego dopasowania, często używa się drugiego konstruktora, używając bieżącego czasu jako wartości początkowej.

Losowa metoda nextInt().

Istnieją dwie opcje Metoda java.util.Random.nextInt().
  • int nextInt(int n) — zwraca następną losową wartość typu int z przedziału od 0 do n. Metoda zgłasza IllegalArgumentException , jeśli n nie jest dodatnie.

  • int nextInt() — zwraca następną losową wartość typu int

Losowy kod metody nextInt() Przykład

Wypróbujmy oba warianty metody java.util.Random.nextInt() z przykładami kodu. Oto przykład metody nextInt() bez argumentów:
import java.util.*;
public class RandomTest {
   public static void main(String[] args)
   {
       //creating a Random Object ran
       Random ran = new Random();

       //generating a number using nextInt() method
       int randomNumber = ran.nextInt();

       System.out.println("Randomly generated number = " + randomNumber);
   }
}
Wyjście będzie… nie wiemy na pewno! Po prostu wypróbuj kod, a otrzymasz losowo wygenerowaną liczbę całkowitą. Wypróbujmy Random.nextInt() z argumentem. Jednak tym razem nasz problem będzie bardziej interesujący. Prawdopodobnie nie raz widziałeś reklamy kasyn online, dosłownie zalały Internet. Tak więc sekwencja generatora liczb w takich grach jest zwykle tworzona przy użyciu metod i klas, takich jak Random . Stwórzmy program, w którym rzucamy dwiema kostkami z liczbą od 1 do 6 wypisaną po obu stronach.
import java.util.*;
public class RandomTest2 {
   public static void main(String args[])
   {

       // create Random Object
       Random random = new Random();

       // Printing the 6 random numbers between 1 and 6 using //random.nextInt()


      for (int i = 1; i < 7; i++) {
          System.out.println("throwing a dice for the " + i + " time");
       System.out.println ("Random number between 1 and 6 is = " + (1 + random.nextInt(6)));
   }
   }
}
W tym programie gracz „rzuca” kostką 6 razy z rzędu. Random.nextInt() określa następną liczbę. Oto jeden z wyników:
rzut kostką po raz 1 Losowa liczba od 1 do 6 to = 5 rzut kostką po raz 2 Losowa liczba od 1 do 6 to = 6 rzuć kostką po raz 3 Losowa liczba od 1 do 6 to = 6 rzucamy kostką po raz czwarty Losowa liczba od 1 do 6 to = 5 rzut kostką po raz 5 Losowa liczba od 1 do 6 to = 2 rzucamy kostką po raz 6 Losowa liczba od 1 do 6 to = 4
W podobny sposób można zaimplementować grę w kości dla dwóch graczy. A także na przykład loteria lub ruletka. Jeśli kiedykolwiek grałeś w grę z proceduralnym generowaniem świata, masz teraz wstępne pojęcie, jak to działa.
Komentarze
  • Popularne
  • Najnowsze
  • Najstarsze
Musisz się zalogować, aby dodać komentarz
Ta strona nie ma jeszcze żadnych komentarzy