Java-program använder slumpmässiga funktioner av olika skäl . För spel och applikationer underhållning , kan programmerare använder slumptal för att skapa ett överraskningsmoment i form av programmets beteende . Oavsett anledningen till att använda slumpmässiga funktioner i ett Java -program , är uppgiften allmänhet okomplicerad . Det finns två huvudsakliga sätt att använda slumpmässighet i Java , antingen med Math klass eller Random klassen . Pseudo - Random
Java -funktioner för att generera slumptal inte faktiskt resultera i värden som är genuint slumpmässiga . Detta är ofta fallet med språk datorprogrammering , eftersom äkta slumpmässighet är svår att uppnå inom ett program . Java använder istället pseudo- randoms , som verkar slumpmässigt till användarna . Bra pseudo - slumpmässiga metoder , såsom de som används i Java , kommer nära de värden som du skulle få med en äkta slumpmässig funktion , så de är i allmänhet tillräckligt för de flesta tillämpningar fungerar .
Math Random Method
Java klassen Math ger en metod för att returnera ett slumpmässigt nummer . Den slumpmässiga metoden för klassen Math returnerar ett värde av primitiv typ dubbel . Det returnerade värdet är ett positivt tal mellan 0,0 och 1,0 , som standard. I följande kod visas med klassen Math för att få ett slumptal inom ett Java -program :
dubbel randNum = Math.random ( ) ;
p Om en programmerare vill värdet att vara mellan en och ten , utför följande struktur detta ändringsförslag :
dubbel randNum = Math.random ( ) * 10 ,
resultatet kan också gjutas till ett int-värde enligt följande :
int randInt = ( int ) randNum ; .
ett program kan kräva ett heltal i fall där slumptal kommer att användas för att komma åt ett element i arrayen
Random Class
Random klassen ger mer omfattande metoder för att använda slumptal i ett Java -program . Java-klasser som avser att använda Random klassen kan importera det som följer :
import java.util.Random ,
När importerats , kan programmen skapa en slumpmässig objekt enligt följande :
Random randGen = new Random ( ) ;
Random objektet är en slumpgenerator , med metoder för att generera olika typer av värden . För att generera ett int-värde inom ett visst intervall , kan program använda följande kod :
int randomInt = randGen.nextInt ( 10 ) ,
Denna kod genererar ett slumpmässigt int värde mellan noll och nio . Parametern anger den övre änden av det önskade intervallet , men den är exklusiv , så det högsta värdet med en parameter av 10 kommer att vara 9 . Random klassen innehåller också metoder för att återvända slumptal av typ dubbel , float och lång .
Användning av slumptal
Java -program kan använda siffror genereras från slumpmässigt funktioner i något sätt de kan använda andra numeriska värden . Ett vanligt användningsområde innebär tillgång ett slumpmässigt element i en array , med arrayen index som valts av slumptalsgenerering process . Följande exempel visar att skriva ut ett slumpmässigt valt värde från en array :
Random indexGenerator = new Random ( ) ;
String [ ] someWords = { " apple " , " banana " , " päron " , " orange " };
int randomIndex = indexGenerator ( someWords.length ) ;
System.out.println ( someWords [ randomIndex ] ;
Indexet väljs kommer vara inom uppsättningen intervall eftersom programmet passerar arrayen längden som parameter till " nextInt " metoden .