Jadual Kandungan
Fungsi Penjana Nombor Rawak dalam Java
1. Kaedah Math.random()
Contoh
2. java.util.Kelas Random
3. Kelas ThreadLocalRandom
Penjanaan Integer
Menjana Nombor Mata Apungan
Kesimpulan – Penjana Nombor Rawak di Java
Rumah Java javaTutorial Penjana Nombor Rawak di Jawa

Penjana Nombor Rawak di Jawa

Aug 30, 2024 pm 04:27 PM
java

Nombor Rawak biasanya digunakan dalam membuat aplikasi seperti Dadu untuk permainan papan, Program Perjudian, dll. Biasanya, penjanaan nombor rawak mengambil banyak masa. Tetapi, dalam bahasa pengaturcaraan Java, ini boleh dicapai menggunakan tiga cara. Ia ditangani dalam bahagian bawah Fungsi Penjana Nombor Rawak di Java.

Mulakan Kursus Pembangunan Perisian Percuma Anda

Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain

Fungsi Penjana Nombor Rawak dalam Java

Dalam Java, Nombor Rawak boleh dijana menggunakan 3 cara:

  • Kaedah Math.random
  • kelas java.util.Random
  • Kelas ThreadLocalRandom

1. Kaedah Math.random()

Kelas Java Math menawarkan beberapa kaedah untuk mengusahakan pengiraan seperti logaritma, purata, eksponen dan sebagainya. random() ialah salah satu kaedah antaranya yang mengembalikan nilai berganda positif dalam julat 0.0 dan 1.0 di mana 0.0 adalah inklusif, dan 1.0 adalah eksklusif. Kaedah ini boleh digunakan dengan atau tanpa menggunakan parameter. Jika parameter diberikan, nombor rawak yang dijana akan berada dalam julat parameter yang diberikan.

Contoh #1

Kod:

public class RandomNumber {
double num; //Declare a variable num
//Method which generates a random number
public double randnum()
{
num=Math.random();
return num;
}
// Main Method of a program
public static void main(String[] args) {
//Printing a random number
System.out.println("Random Number generated inside main method: "+Math.random());
//Create an object of the class RandomNumber
RandomNumber randomobj=new RandomNumber();
//Store the return value obtained from randnum method in a variable randomval
double randomval=randomobj.randnum();
//Printing the random number stored in variable randomval
System.out.println("Random Number generated inside randomnumber method: "+randomval);
}
}
Salin selepas log masuk

Output:

Penjana Nombor Rawak di Jawa

Dalam Contoh di atas, Nombor Rawak dijana menggunakan kaedah Math.random() dalam dua cara-Menggunakannya secara langsung di dalam kaedah utama dan memanggil kaedah yang mengandungi Math.random() menggunakan objek.  Seperti yang dinyatakan dalam penjelasan di atas, kita dapat melihat bahawa 2 nombor rawak dijana dalam julat 0.0 dan 1.0.

Untuk menjana nombor rawak dalam julat parameter, ungkapan umum yang digunakan dinyatakan di bawah:

Math.random()*  (( maxvalue – minvalue ) +1 ) + minvalue

Contoh #2

Dengan nilai max ialah sempadan atas julat dan nilai min ialah sempadan bawah julat. Sebagai Contoh, untuk menjana nombor rawak antara 10 dan 20, tetapkan nilai maks sebagai 20 dan nilai min sebagai 10.

Kod:

public class RandomNumParameters {
public double randomnum(double x,double y)//max value-y, min value-x
{
double z =(Math.random()*((y-x)+1)+x); //Formula for random number generation within a range
return z;
}
public static void main(String[] args)
{
RandomNumParameters ran=new RandomNumParameters(); //Create instance for the class RandomNumParameters
double num=ran.randomnum(3.0, 10.0); //Call the Method
System.out.println("Random number generated within the range of 3 and 10: "+num );
} }
Salin selepas log masuk

Output:

Penjana Nombor Rawak di Jawa

2. java.util.Kelas Random

Kelas Java.util.random menjana nombor rawak jenis data yang berbeza seperti float, long, integer, double, Boolean, dll. Anda juga boleh menghantar julat nombor sebagai argumen untuk menjana nombor rawak dalam julat itu . Untuk menggunakan kelas ini, kelas Rawak java.util mesti diimport (java.util.Random). Setelah kelas ini diimport, buat contoh dan panggil kaedah seperti next long(), nextInt(), dll. menggunakan tika itu.

Contoh

Kod:

//Java program to generate Random numbers using Random class
package Sample;
import java.util.Random; //import Random Class
public class RandomNum {
public static void main(String[] args) {
Random rand=new Random(); //Create instance of Random class
double randomnum=rand.nextDouble(); //Assign the Random Double value in randomnum variable
System.out.println("Random Double value: "+ randomnum);
}
}
Salin selepas log masuk

Output:

Penjana Nombor Rawak di Jawa

Dalam atur cara di atas, nilai berganda rawak dijana menggunakan kaedah nextDouble().

3. Kelas ThreadLocalRandom

Kelas ThreadLocalRandom ialah jenis kelas Random yang khusus yang diperkenalkan dalam Java versi 1.7. ThreadLocalRandom.current().nextInt() ialah salah satu kaedah biasa yang digunakan untuk menjana nombor rawak. Ia biasanya digunakan dalam aplikasi berbilang benang.

Contoh

Kod:

//Java Program to generate random numbers using ThreadLocalRandom Class
import java.util.concurrent.ThreadLocalRandom;
public class RandomNumThread {
public static void main(String[] args) {
//print a random double
System.out.println("Random Double value using ThreadLocalRandom: "+ThreadLocalRandom.current().nextDouble());
}
}
Salin selepas log masuk

Output:

Penjana Nombor Rawak di Jawa

Penjanaan Integer

Integer rawak boleh dijana menggunakan kelas ThreadLocalRandom dan Kelas Rawak. Dalam kedua-dua kes, kaedah nextInt() digunakan untuk perkara yang sama:

Contoh

Kod:

//Java program to generate Random integer numbers using Random and THreadLocalRandom Class
import java.util.Random;
import java.util.concurrent.ThreadLocalRandom;
public class RandomInteger {
public static void main(String[] args) {
Random rnd=new Random(); //Create instance of Random class
int randomnum1=rnd.nextInt(); //Random Integer value using Random Class
int randomnum2=rnd.nextInt(30); //Random Integer value within the range of 30
int randomnum3= ThreadLocalRandom.current().nextInt(); //Random Integer value using ThreadLocalRandom Class
System.out.println("Random Integer value using Random Class: "+ randomnum1);
System.out.println("Random Integer value within the range of 30: "+ randomnum2);
System.out.println("Random Integer value using ThreadLocalRandom Class: "+ randomnum3);
}
}
Salin selepas log masuk

Output:

Penjana Nombor Rawak di Jawa

Dalam contoh di atas, tiga nombor jenis integer rawak dijana di mana salah satu kaedah nextInt() mempunyai 30 sebagai hujah. Jadi, semasa menjana nombor rawak, 30 akan ditetapkan sebagai had atas dan sifar (had bawah lalai) akan ditetapkan sebagai had bawah.

Menjana Nombor Mata Apungan

Sama seperti menjana nombor integer, nombor titik terapung boleh dijana menggunakan kaedah nextFloat(). Kaedah ini boleh digunakan dalam kedua-dua Kelas Rawak dan Kelas ThreadLocalRandom:

Contoh

Kod:

//Java program to generate Random Float numbers using Random and THreadLocalRandom Class
import java.util.Random;
import java.util.concurrent.ThreadLocalRandom;
public class RandomFloat {
public static void main(String[] args) {
Random rnd=new Random(); //Create instance of Random class
float randomnum1=rnd.nextFloat(); //Random Float value using Random Class
float randomnum2= ThreadLocalRandom.current().nextFloat(); //Random Float value using ThreadLocalRandom Class
System.out.println("Random float value using Random Class: "+ randomnum1);
System.out.println("Random float value using ThreadLocalRandom Class: "+ randomnum2);
}
}
Salin selepas log masuk

Output:

Penjana Nombor Rawak di Jawa

Kesimpulan – Penjana Nombor Rawak di Java

Java mengandungi pelbagai fungsi yang boleh digunakan dalam atur cara. Ini membantu dalam mengurangkan masa pemprosesan dan baris kod. Penjanaan Nombor Rawak ialah satu tugas di mana kita boleh menggunakan beberapa fungsi ini. Dokumen ini merangkumi kaedah yang berbeza untuk mencapai matlamat ini.

Atas ialah kandungan terperinci Penjana Nombor Rawak di Jawa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

<🎜>: Bubble Gum Simulator Infinity - Cara Mendapatkan dan Menggunakan Kekunci Diraja
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Cara Membuka Kunci Cangkuk Bergelut
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Sistem Fusion, dijelaskan
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1668
14
Tutorial PHP
1273
29
Tutorial C#
1256
24
PHP: Bahasa utama untuk pembangunan web PHP: Bahasa utama untuk pembangunan web Apr 13, 2025 am 12:08 AM

PHP adalah bahasa skrip yang digunakan secara meluas di sisi pelayan, terutamanya sesuai untuk pembangunan web. 1.PHP boleh membenamkan HTML, memproses permintaan dan respons HTTP, dan menyokong pelbagai pangkalan data. 2.PHP digunakan untuk menjana kandungan web dinamik, data borang proses, pangkalan data akses, dan lain -lain, dengan sokongan komuniti yang kuat dan sumber sumber terbuka. 3. PHP adalah bahasa yang ditafsirkan, dan proses pelaksanaan termasuk analisis leksikal, analisis tatabahasa, penyusunan dan pelaksanaan. 4.Php boleh digabungkan dengan MySQL untuk aplikasi lanjutan seperti sistem pendaftaran pengguna. 5. Apabila debugging php, anda boleh menggunakan fungsi seperti error_reporting () dan var_dump (). 6. Mengoptimumkan kod PHP untuk menggunakan mekanisme caching, mengoptimumkan pertanyaan pangkalan data dan menggunakan fungsi terbina dalam. 7

PHP vs Python: Memahami Perbezaan PHP vs Python: Memahami Perbezaan Apr 11, 2025 am 12:15 AM

PHP dan Python masing -masing mempunyai kelebihan sendiri, dan pilihannya harus berdasarkan keperluan projek. 1.Php sesuai untuk pembangunan web, dengan sintaks mudah dan kecekapan pelaksanaan yang tinggi. 2. Python sesuai untuk sains data dan pembelajaran mesin, dengan sintaks ringkas dan perpustakaan yang kaya.

Cuti atau kembali dari Java 8 Stream Foreach? Cuti atau kembali dari Java 8 Stream Foreach? Feb 07, 2025 pm 12:09 PM

Java 8 memperkenalkan API Stream, menyediakan cara yang kuat dan ekspresif untuk memproses koleksi data. Walau bagaimanapun, soalan biasa apabila menggunakan aliran adalah: bagaimana untuk memecahkan atau kembali dari operasi foreach? Gelung tradisional membolehkan gangguan awal atau pulangan, tetapi kaedah Foreach Stream tidak menyokong secara langsung kaedah ini. Artikel ini akan menerangkan sebab -sebab dan meneroka kaedah alternatif untuk melaksanakan penamatan pramatang dalam sistem pemprosesan aliran. Bacaan Lanjut: Penambahbaikan API Java Stream Memahami aliran aliran Kaedah Foreach adalah operasi terminal yang melakukan satu operasi pada setiap elemen dalam aliran. Niat reka bentuknya adalah

PHP vs Bahasa Lain: Perbandingan PHP vs Bahasa Lain: Perbandingan Apr 13, 2025 am 12:19 AM

PHP sesuai untuk pembangunan web, terutamanya dalam pembangunan pesat dan memproses kandungan dinamik, tetapi tidak baik pada sains data dan aplikasi peringkat perusahaan. Berbanding dengan Python, PHP mempunyai lebih banyak kelebihan dalam pembangunan web, tetapi tidak sebaik python dalam bidang sains data; Berbanding dengan Java, PHP melakukan lebih buruk dalam aplikasi peringkat perusahaan, tetapi lebih fleksibel dalam pembangunan web; Berbanding dengan JavaScript, PHP lebih ringkas dalam pembangunan back-end, tetapi tidak sebaik JavaScript dalam pembangunan front-end.

PHP vs Python: Ciri dan Fungsi Teras PHP vs Python: Ciri dan Fungsi Teras Apr 13, 2025 am 12:16 AM

PHP dan Python masing -masing mempunyai kelebihan sendiri dan sesuai untuk senario yang berbeza. 1.PHP sesuai untuk pembangunan web dan menyediakan pelayan web terbina dalam dan perpustakaan fungsi yang kaya. 2. Python sesuai untuk sains data dan pembelajaran mesin, dengan sintaks ringkas dan perpustakaan standard yang kuat. Apabila memilih, ia harus diputuskan berdasarkan keperluan projek.

Impak PHP: Pembangunan Web dan seterusnya Impak PHP: Pembangunan Web dan seterusnya Apr 18, 2025 am 12:10 AM

Phphassignificantelympactedwebdevelopmentandextendsbeyondit.1) itpowersmajorplatformslikeworderpressandexcelsindatabaseIntions.2) php'SadaptabilityAldoStoScaleforlargeapplicationFrameworksLikelara.3)

PHP: asas banyak laman web PHP: asas banyak laman web Apr 13, 2025 am 12:07 AM

Sebab mengapa PHP adalah timbunan teknologi pilihan untuk banyak laman web termasuk kemudahan penggunaannya, sokongan komuniti yang kuat, dan penggunaan yang meluas. 1) Mudah dipelajari dan digunakan, sesuai untuk pemula. 2) Mempunyai komuniti pemaju yang besar dan sumber yang kaya. 3) Digunakan secara meluas dalam platform WordPress, Drupal dan lain -lain. 4) Mengintegrasikan dengan ketat dengan pelayan web untuk memudahkan penggunaan pembangunan.

PHP vs Python: Gunakan Kes dan Aplikasi PHP vs Python: Gunakan Kes dan Aplikasi Apr 17, 2025 am 12:23 AM

PHP sesuai untuk pembangunan web dan sistem pengurusan kandungan, dan Python sesuai untuk sains data, pembelajaran mesin dan skrip automasi. 1.PHP berfungsi dengan baik dalam membina laman web dan aplikasi yang cepat dan berskala dan biasanya digunakan dalam CMS seperti WordPress. 2. Python telah melakukan yang luar biasa dalam bidang sains data dan pembelajaran mesin, dengan perpustakaan yang kaya seperti numpy dan tensorflow.

See all articles