CodeGym /Java blogg /Slumpmässig /Java Random nextInt() metod
John Squirrels
Nivå
San Francisco

Java Random nextInt() metod

Publicerad i gruppen
Det finns flera alternativ för att skapa en pseudo-slumptalsgenerator i Java-språket. Ett av dessa alternativ är användningen av klassen java.util.Random och metoden nextInt() . I den här artikeln kommer vi att prata om metoden Random nextInt() och ge några kodexempel på dess användning.

Kort om klassen java.util.Random

Klassen java.util.Random är, som vi sa, en pseudoslumptalsgenerator. Klassen representeras av två konstruktörer
  • Random() — skapar en talgenerator med ett unikt frö

  • Random (långt frö) — låter dig specificera fröet manuellt

Eftersom klassen skapar ett pseudoslumptal, genom att ange ett frö, bestämmer du startpunkten för den slumpmässiga sekvensen. Och du kommer att få samma slumpmässiga sekvenser. För att undvika en sådan matchning är det vanligt att använda en andra konstruktor som använder den aktuella tiden som startvärde.

Slumpmässig nextInt()-metod

Det finns två alternativ java.util.Random.nextInt() Method
  • int nextInt(int n) — returnerar nästa slumpmässiga värde av typen int i intervallet från 0 till n. Metoden kastar IllegalArgumentException , om n inte är positivt.

  • int nextInt() — returnerar nästa slumpmässiga int-värde

Random nextInt() metodkod Exempel

Låt oss prova båda varianterna av metoden java.util.Random.nextInt() med kodexempel. Här är ett exempel på metoden nextInt() utan argument:

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);
   }
}
Resultatet blir...vi vet inte säkert! Prova bara koden så får du ett slumpmässigt genererat heltal. Låt oss prova Random.nextInt() med ett argument. Men den här gången kommer vårt problem att vara mer intressant. Du har säkert sett onlinekasinoannonser mer än en gång, de bokstavligen översvämmade internet. Så, nummergeneratorns sekvens i sådana spel skapas vanligtvis med metoder och klasser som Random . Låt oss skapa ett program där vi slår två tärningar med ett nummer från 1 till 6 skrivet på varje sida.

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)));
   }
   }
}
I det här programmet "rullar" spelaren tärningarna 6 gånger i rad. Random.nextInt() bestämmer nästa nummer. Här är ett av resultaten:
kasta en tärning för 1 gång Slumptal mellan 1 och 6 är = 5 kasta tärning för 2 gång Slumptal mellan 1 och 6 är = 6 kasta en tärning för 3 gånger Slumptal mellan 1 och 6 är = 6 kasta en tärning för 4 gånger Slumptal mellan 1 och 6 är = 5 kasta tärning för 5 gånger Slumptal mellan 1 och 6 är = 2 kasta tärning för 6 gånger Slumptal mellan 1 och 6 är = 4
På liknande sätt kan du implementera ett tärningsspel för två spelare. Och även lotteriet, eller roulette, till exempel. Om du någonsin har spelat ett spel med processuell världsgenerering har du nu en första uppfattning om hur det fungerar.
Kommentarer
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION