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
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.
GO TO FULL VERSION