Ada beberapa opsi untuk membuat generator bilangan acak semu dalam bahasa Java. Salah satu opsi ini adalah penggunaan kelas java.util.Random dan metode nextInt() . Pada artikel ini, kita akan berbicara tentang metode Random nextInt() dan memberikan beberapa contoh kode penggunaannya.
Secara singkat tentang kelas java.util.Random
Kelas java.util.Random , seperti yang kami katakan, adalah generator bilangan acak semu. Kelas diwakili oleh dua konstruktor-
Random() — membuat generator angka menggunakan seed unik
-
Random(long seed) — memungkinkan Anda menentukan seed secara manual
Metode acak nextInt()
Ada dua opsi metode java.util.Random.nextInt()-
int nextInt(int n) — mengembalikan nilai acak berikutnya dari tipe int dalam rentang dari 0 hingga n. Metode melempar IllegalArgumentException , jika n tidak positif.
-
int nextInt() — mengembalikan nilai int acak berikutnya
Contoh kode metode nextInt() acak
Mari kita coba kedua varian Metode java.util.Random.nextInt() dengan contoh kode. Berikut adalah contoh metode nextInt() tanpa argumen:
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);
}
}
Outputnya adalah… kita tidak tahu pasti! Coba saja kodenya dan Anda akan mendapatkan bilangan bulat yang dihasilkan secara acak. Mari kita coba Random.nextInt() dengan argumen. Namun, kali ini masalah kita akan lebih menarik. Anda mungkin pernah melihat iklan kasino online lebih dari sekali, mereka benar-benar membanjiri Internet. Jadi, urutan generator angka dalam game semacam itu biasanya dibuat menggunakan metode dan kelas seperti Random . Mari kita buat program di mana kita melempar dua dadu dengan angka dari 1 sampai 6 tertulis di setiap sisinya.
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)));
}
}
}
Dalam program ini, pemain "melempar" dadu sebanyak 6 kali berturut-turut. Random.nextInt() menentukan nomor berikutnya. Ini salah satu hasilnya:
1 kali melempar dadu Angka acak antara 1 sampai 6 = 5 kali melempar dadu 2 kali Angka acak antara 1 dan 6 = 6 kali melempar dadu 3 kali Angka acak antara 1 dan 6 = 6 kali dadu sebanyak 4 kali Angka acak antara 1 dan 6 adalah = 5 melempar dadu sebanyak 5 kali Angka acak antara 1 dan 6 adalah = 2 melempar dadu selama 6 kali Angka acak antara 1 dan 6 adalah = 4
Dengan cara yang sama, Anda dapat menerapkan permainan dadu untuk dua pemain. Dan juga lotere, atau rolet, misalnya. Jika Anda pernah memainkan game dengan generasi dunia prosedural, Anda sekarang memiliki gagasan awal tentang cara kerjanya.
GO TO FULL VERSION