Artikel ini akan memperkenalkan anda Nombor Rawak Dan String Generator Di Jawa dan ikuti dengan demonstrasi program. Petunjuk berikut akan dibahas dalam artikel ini,
- Java.util.Rawak
- Math.random ()
- Kelas Java.util.concurrent.ThreadLocalRandom
- Menghasilkan Rentetan rawak di Jawa
- Menggunakan Math.random ()
- Menggunakan CharSet
- Menggunakan Ungkapan Biasa
Terdapat tiga kaedah untuk menghasilkan nombor rawak dalam java menggunakan kaedah dan kelas terbina dalam.
- Java.util.Rawak kelas
- Kaedah Math.random
- Kelas ThreadLocalRandom
Oleh itu, mari kita mulakan artikel mengenai penjana nombor dan tali secara rawak di Java,
Jawa .Berguna Secara rawak
Pertama sekali, kita perlu membuat contoh kelas ini dalam program dan kemudian menggunakan pelbagai kaedah terbina dalam seperti nextInt (), nextDouble () dll menggunakan contoh yang kita buat.
Bilangan rawak bilangan bulat jenis, float, double, long, booleans boleh dibuat menggunakan kelas ini.
Hujah boleh diteruskan ke kaedah untuk menentukan batas atas sehingga nombor itu dihasilkan. Contohnya, nextInt (4) akan menghasilkan nombor dalam julat 0 hingga 3 (kedua-duanya termasuk).
Contoh1:
// Program Java untuk menunjukkan penjanaan nombor secara rawak // menggunakan java.util. Import rawak java.util. Kelas awam rawak Utama {public static void main (String args []) {// membuat contoh kelas Random Random rand = baru Random () // Menghasilkan bilangan bulat rawak dalam lingkungan 0 hingga 99 int int1 = rand.nextInt (100) int int2 = rand.nextInt (100) // Mencetak bilangan bulat rawak System.out.println ('Random Integers:>' + int1) System.out.println ('Random Integers:>' + int2) // Menghasilkan rawak double dub1 = rand.nextDouble () double dub2 = rand.nextDouble () // Mencetak double random System.out.println (' Rawak Ganda:> '+ dub1) System.out.println (' Random Doubles:> '+ dub2)}}
Pengeluaran:
Contoh:
// Program Java untuk menunjukkan penjanaan nombor secara rawak // menggunakan java.util. Import rawak java.util. Kelas awam rawak Utama {public static void main (String args []) {// membuat contoh kelas Random Random rand = baru Random () // Menghasilkan integer rawak dalam julat 0 hingga 9 int int1 = rand.nextInt (10) // Mencetak integer rawak System.out.println ('Random Integer:>' + int1)}}
Pengeluaran:
Matematik . rawak ( )
Kelas yang dinamakan sebagai Math terdiri daripada pelbagai kaedah untuk melakukan sejumlah operasi numerik yang berbeza yang merangkumi logaritma, menyelesaikan eksponen dll. Di antara operasi ini terdapat random () yang digunakan untuk menghasilkan nombor rawak jenis ganda antara julat 0.0 dan 1.0 . Kaedah ini mengembalikan nilai berganda yang lebih besar daripada atau sama dengan 0,0 dan kurang daripada atau sama dengan 1,0 bersama dengan tanda positif. Nilai yang dikembalikan secara rawak () dipilih secara rawak oleh mesin.
Contoh 1:
// Program Java untuk menunjukkan kerja // Math.random () untuk menghasilkan nombor rawak import java.util. * Kelas awam Utama {public static void main (String args []) {// Menjana nilai rawak jenis data berganda System.out.println ('Nilai rawak:' + Math.random ())}}
Pengeluaran:
Untuk memeriksa keacakan, mari kita laksanakan program sekali lagi.
// Program Java untuk menunjukkan kerja // Math.random () untuk menghasilkan nombor rawak import java.util. * Kelas awam Utama {public static void main (String args []) {// Menjana nilai rawak jenis data berganda System.out.println ('Nilai Rawak Lain:' + Math.random ())}}
Pengeluaran:
Teruskan dengan artikel ini mengenai penjana nombor rawak dan tali di java
Kelas Java.util.concurrent.ThreadLocalRandom
Kelas ini diperkenalkan dalam java 1.7 untuk menghasilkan bilangan bulat bilangan bulat jenis data, beregu, Booleans dll.
Contoh 1:
// Program Java untuk menunjukkan kerja ThreadLocalRandom // untuk menghasilkan nombor rawak. import java.util.concurrent.ThreadLocalRandom public class Main {public static void main (String args []) {// Menjana bilangan bulat rawak dalam lingkungan 0 hingga 99 int int2 = ThreadLocalRandom.current (). nextInt () // Mencetak bilangan bulat rawak System.out.println ('Random Integers:' + int2) // Menghasilkan double random double dub1 = ThreadLocalRandom.current (). NextDouble () double dub2 = ThreadLocalRandom.current (). NextDouble () // Mencetak sistem beregu rawak. out.println ('Random Doubles:' + dub1) System.out.println ('Random Doubles:' + dub2)}}
Pengeluaran:
Contoh 2:
// Program Java untuk menunjukkan kerja ThreadLocalRandom // untuk menghasilkan nombor rawak. import java.util.concurrent.ThreadLocalRandom public class Utama {public static void main (String args []) {// Menghasilkan boolean boolean rawak1 = ThreadLocalRandom.current (). nextBoolean () boolean bool2 = ThreadLocalRandom.current (). nextBoolean () // Cetak sistem Booleans rawak.out.println ('Random Booleans:' + bool1) System.out.println ('Random Booleans:' + bool2)}}
Pengeluaran:
overloading vs overriding c ++
Teruskan dengan artikel ini mengenai penjana nombor rawak dan tali di java
Menghasilkan Rentetan rawak di Jawa
Kita boleh menghasilkan rentetan alfanumerik rawak dengan menggunakan kaedah berikut:
Teruskan dengan artikel ini mengenai penjana nombor rawak dan tali di java
Menggunakan Matematik . rawak ( )
Berikut adalah Contoh untuk memahami konsep dengan cara yang lebih baik.
// Program Java yang menghasilkan Rentetan AlphaNumerik rawak // menggunakan kaedah awam Matematik.rawak () kelas Utama {// menentukan fungsi untuk menghasilkan rentetan rawak panjang dan String statik Diperlukan String (int n) {// memilih Karakter rawak dari String String ini AlphaNumericString = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' + '0123456789' + 'abcdefghijklmnopqrstuvxyz' // create StringBuffer size of AlphaNumericString StringBuilder s = new string yu (n)Pengeluaran:
Teruskan dengan artikel ini mengenai penjana nombor rawak dan tali di java
Menggunakan CharSet
Kita mesti menggunakan pakej yang berbeza di sini iaitu pakej java.nio.charset.
Berikut adalah Contoh yang digambarkan.// Program Java menghasilkan Rentetan AlphaNumerik rawak // menggunakan CharSet import java.util. * Import java.nio.charset. * Class Main {static String RequiredString (int n) {// panjang deklarasi byte [] array = bait baru [256] Random baru (). NextBytes (array) String randomString = String baru (array, Charset.forName ('UTF-8')) // Membuat StringBuffer StringBuffer ra = StringBuffer baru () // Menambahkan 20 aksara alfanumerik pertama untuk (int i = 0 i = 'a' && ch = 'A' && ch = '0' && ch 0)) {ra.append (ch) n--}} // mengembalikan rentetan hasil yang dihasilkan ra.toString ()} public static void main (String [] args) {// ukuran rentetan alfanumerik rawak int n = 10 // Dapatkan dan paparkan rentetan alfanumerik System.out.println (RequiredString (n))}}Pengeluaran:
Teruskan dengan artikel ini mengenai penjana nombor rawak dan tali di java
Menggunakan Ungkapan Biasa
Pelaksanaannya adalah seperti Contoh berikut.
// Program Java menghasilkan AlphaNumeric String rawak // menggunakan kaedah Regular Expressions import java.util. * Import java.nio.charset. * Class Main {static String getAlphaNumericString (int n) {// panjang deklarasi byte [] array = byte baru [256] Random baru (). nextBytes (array) String randomString = String baru (array, Charset.forName ('UTF-8')) // Membuat StringBuffer StringBuffer ra = StringBuffer baru () // keluarkan semua ruang char String AlphaNumericString = randomString .replaceAll ('[^ A-Za-z0-9]', '') // Tambahkan 20 aksara alfanumerik pertama // dari String rawak yang dihasilkan ke dalam hasil untuk (int k = 0 k 0) || Character.isDigit (AlphaNumericString.charAt (k)) && (n> 0)) {ra.append (AlphaNumericString.charAt (k)) n--}} // mengembalikan rentetan rentetan yang dihasilkan ra.toString ()} statik awam void main (String [] args) {// ukuran rentetan alfanumerik rawak int n = 15 // Dapatkan dan paparkan rentetan alfanumerik System.out.println (getAlphaNumericString (n))}}Pengeluaran:
Oleh itu, kita telah mengakhiri artikel ini. Sekiranya anda ingin mengetahui lebih lanjut, lihat di oleh Edureka, sebuah syarikat pembelajaran dalam talian yang dipercayai. Kursus latihan dan pensijilan Java J2EE dan SOA Edureka dirancang untuk melatih anda untuk konsep Java teras dan maju bersama dengan pelbagai kerangka kerja Java seperti Hibernate & Spring.
Ada soalan untuk kami? Sila sebutkan di bahagian komen blog ini dan kami akan menghubungi anda secepat mungkin.