Mayroong ilang mga pagpipilian para sa paglikha ng isang pseudo-random na generator ng numero sa wikang Java. Isa sa mga opsyong ito ay ang paggamit ng java.util.Random na klase at ang nextInt() na pamamaraan. Sa artikulong ito, pag-uusapan natin ang tungkol sa Random nextInt() na pamamaraan at magbibigay ng ilang halimbawa ng code ng paggamit nito.

Sa madaling sabi tungkol sa java.util.Random na klase

Ang java.util.Random class, gaya ng sinabi namin, ay isang pseudo-random number generator. Ang klase ay kinakatawan ng dalawang constructor
  • Random() — lumilikha ng number generator gamit ang isang natatanging seed

  • Random(long seed) — nagpapahintulot sa iyo na tukuyin ang buto nang manu-mano

Dahil ang klase ay lumikha ng isang pseudo-random na numero, sa pamamagitan ng pagtukoy ng isang binhi, matutukoy mo ang panimulang punto ng random na pagkakasunud-sunod. At makakakuha ka ng parehong mga random na pagkakasunud-sunod. Upang maiwasan ang gayong tugma, karaniwan na gumamit ng pangalawang constructor gamit ang kasalukuyang oras bilang paunang halaga.

Random na nextInt() na pamamaraan

Mayroong dalawang opsyon na java.util.Random.nextInt() Method
  • int nextInt(int n) — ibinabalik ang susunod na random na halaga ng uri ng int sa hanay mula 0 hanggang n. Ang pamamaraan ay nagtatapon ng IllegalArgumentException , kung ang n ay hindi positibo.

  • int nextInt() — ibinabalik ang susunod na random na int value

Random nextInt() method code Halimbawa

Subukan natin ang parehong variant ng java.util.Random.nextInt() Method na may mga halimbawa ng code. Narito ang isang halimbawa ng nextInt() na pamamaraan na walang mga argumento:

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);
   }
}
Ang magiging output ay…hindi namin alam kung sigurado! Subukan lang ang code at makakakuha ka ng random na nabuong integer number. Subukan natin ang Random.nextInt() na may argumento. Gayunpaman, sa pagkakataong ito ang aming problema ay magiging mas kawili-wili. Malamang na nakakita ka ng mga ad sa online na casino nang higit sa isang beses, literal nilang binaha ang Internet. Kaya, ang pagkakasunud-sunod ng number generator sa mga naturang laro ay karaniwang ginagawa gamit ang mga pamamaraan at klase tulad ng Random . Gumawa tayo ng isang programa kung saan gumulong tayo ng dalawang dice na may nakasulat na numero mula 1 hanggang 6 sa bawat panig.

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)));
   }
   }
}
Sa programang ito, ang manlalaro ay "nagpapagulong" ng dice nang 6 na beses sa isang hilera. Tinutukoy ng Random.nextInt() ang susunod na numero. Narito ang isa sa mga resulta:
paghahagis ng dice para sa 1 beses Random na numero sa pagitan ng 1 at 6 ay = 5 paghahagis ng dice para sa 2 beses Random na numero sa pagitan ng 1 at 6 ay = 6 paghahagis ng dice para sa 3 beses Random na numero sa pagitan ng 1 at 6 ay = 6 paghagis ng isang dice para sa 4 na beses Random na numero sa pagitan ng 1 at 6 ay = 5 paghahagis ng dice para sa 5 beses Random na numero sa pagitan ng 1 at 6 ay = 2 paghahagis ng dice para sa 6 na Random na numero sa pagitan ng 1 at 6 ay = 4
Sa katulad na paraan, maaari kang magpatupad ng laro ng dice para sa dalawang manlalaro. At pati na rin ang lottery, o roulette, halimbawa. Kung naglaro ka na ng isang laro na may pamamaraang pagbuo ng mundo, mayroon ka na ngayong paunang ideya kung paano ito gumagana.