Der er flere muligheder for at oprette en pseudo-tilfældig talgenerator i Java-sprog. En af disse muligheder er brugen af klassen java.util.Random og metoden nextInt() . I denne artikel vil vi tale om metoden Random nextInt() og give nogle kodeeksempler på dens brug.
Kort om klassen java.util.Random
Java.util.Random - klassen er som sagt en pseudo-tilfældig talgenerator. Klassen er repræsenteret af to konstruktører-
Random() — opretter en talgenerator ved hjælp af et unikt frø
-
Tilfældig (langt frø) — giver dig mulighed for at angive frøet manuelt
Tilfældig nextInt() metode
Der er to muligheder java.util.Random.nextInt() Method-
int nextInt(int n) — returnerer den næste tilfældige værdi af typen int i området fra 0 til n. Metoden kaster IllegalArgumentException , hvis n ikke er positiv.
-
int nextInt() — returnerer den næste tilfældige int-værdi
Random nextInt() metodekode Eksempel
Lad os prøve begge varianter af java.util.Random.nextInt() -metoden med kodeeksempler. Her er et eksempel på nextInt() metode uden argumenter:
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);
}
}
Outputtet bliver...vi ved det ikke med sikkerhed! Prøv blot koden, og du får et tilfældigt genereret heltal. Lad os prøve Random.nextInt() med et argument. Men denne gang vil vores problem være mere interessant. Du har sikkert set online casino annoncer mere end én gang, de oversvømmede bogstaveligt talt internettet. Så talgeneratorens sekvens i sådanne spil er normalt skabt ved hjælp af metoder og klasser som Random . Lad os lave et program, hvor vi kaster to terninger med et tal fra 1 til 6 skrevet på hver side.
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 dette program "ruller" spilleren med terningerne 6 gange i træk. Random.nextInt() bestemmer det næste tal. Her er et af resultaterne:
at kaste en terning 1 gang Tilfældigt tal mellem 1 og 6 er = 5 at kaste en terning for 2 gang Tilfældigt tal mellem 1 og 6 er = 6 at kaste en terning 3 gange Tilfældigt tal mellem 1 og 6 er = 6 at kaste en terninger for 4 gange Tilfældigt tal mellem 1 og 6 er = 5 at kaste en terning for 5 gange Tilfældigt tal mellem 1 og 6 er = 2 at kaste en terning for 6 gange Tilfældigt tal mellem 1 og 6 er = 4
På lignende måde kan du implementere et terningspil for to spillere. Og også lotteriet, eller roulette, for eksempel. Hvis du nogensinde har spillet et spil med proceduremæssig verdensgeneration, har du nu en indledende idé om, hvordan det fungerer.
GO TO FULL VERSION