Bagaimana Mengatasi Nomor Acak dan Generator String di Java?



Artikel ini akan memperkenalkan Anda ke Random Number And String Generator In Java dan menindaklanjutinya dengan demonstrasi programatik.

Artikel ini akan memperkenalkan Anda kepada Angka acak Dan String Generator Di Java dan ikuti dengan demonstrasi terprogram. Petunjuk berikut akan dibahas dalam artikel ini,

Ada tiga metode untuk menghasilkan bilangan acak di java menggunakan metode dan kelas bawaan.





  • Kelas Java.util.Random
  • Metode acak matematika
  • Kelas ThreadLocalRandom

Jadi mari kita mulai artikel tentang bilangan acak dan generator string di Java,

Jawa .Berguna. Acak

Pertama-tama, kita perlu membuat instance dari kelas ini di program dan kemudian memanggil berbagai metode bawaan seperti nextInt (), nextDouble () dll menggunakan instance yang kita buat.
Nomor acak jenis integer, float, double, long, boolean dapat dibuat menggunakan kelas ini.
Argumen dapat diteruskan ke metode untuk menentukan batas atas sampai nomor yang akan dihasilkan. Misalnya, nextInt (4) akan menghasilkan angka dalam rentang 0 hingga 3 (keduanya inklusif).



Contoh 1:

// Program Java untuk menunjukkan pembuatan bilangan acak // menggunakan java.util.Random import java.util.Random public class Main {public static void main (String args []) {// membuat instance dari class Random Random rand = new Random () // Menghasilkan bilangan bulat acak dalam rentang 0 hingga 99 int int1 = rand.nextInt (100) int int2 = rand.nextInt (100) // Mencetak bilangan bulat acak System.out.println ('Random Integers:>' + int1) System.out.println ('Random Integers:>' + int2) // Menghasilkan Ganda Acak ganda ganda dub1 = rand.nextDouble () double dub2 = rand.nextDouble () // Mencetak ganda acak System.out.println (' Ganda Acak:> '+ dub1) System.out.println (' Ganda Acak:> '+ dub2)}}

Keluaran:

Output-nomor acak dan generator string di java- Edureka



Contoh:

// Program Java untuk menunjukkan pembuatan bilangan acak // menggunakan java.util.Random import java.util.Random public class Main {public static void main (String args []) {// membuat instance dari class Random Random rand = new Random () // Menghasilkan bilangan bulat acak dalam rentang 0 hingga 9 int int1 = rand.nextInt (10) // Mencetak bilangan bulat acak System.out.println ('Random Integer:>' + int1)}}

Keluaran:

Lanjutkan dengan artikel ini

Matematika . acak ( )

Kelas bernama Matematika terdiri dari berbagai metode untuk melakukan sejumlah operasi numerik yang berbeda yang mencakup logaritma, penyelesaian eksponensial, dll. Di antara operasi ini ada random () yang digunakan untuk menghasilkan bilangan acak jenis ganda antara kisaran 0,0 dan 1,0 . Metode ini mengembalikan nilai ganda yang lebih besar dari atau sama dengan 0,0 dan kurang dari atau sama dengan 1,0 bersama dengan tanda positif. Nilai yang dikembalikan secara random () dipilih secara acak oleh mesin.

Contoh 1:

// Program Java untuk mendemonstrasikan cara kerja // Math.random () untuk menghasilkan bilangan acak import java.util. * Public class Main {public static void main (String args []) {// Menghasilkan nilai acak tipe data ganda System.out.println ('Nilai acak:' + Math.random ())}}

Keluaran:

Untuk memeriksa keacakan, mari jalankan program sekali lagi.

// Program Java untuk mendemonstrasikan cara kerja // Math.random () untuk menghasilkan bilangan acak import java.util. * Public class Main {public static void main (String args []) {// Menghasilkan nilai acak tipe data ganda System.out.println ('Nilai Acak Lain:' + Math.random ())}}

Keluaran:

cara mengatur gerhana

Pindah dengan artikel ini tentang bilangan acak dan generator string di java

Java.util.concurrent.ThreadLocalRandom

Kelas ini diperkenalkan di java 1.7 untuk menghasilkan bilangan acak dari bilangan bulat tipe data, ganda, Boolean, dll.
Contoh 1:

// Program Java untuk mendemonstrasikan kerja ThreadLocalRandom // untuk menghasilkan angka acak. import java.util.concurrent.ThreadLocalRandom public class Main {public static void main (String args []) {// Menghasilkan bilangan bulat acak dalam rentang 0 hingga 99 int int2 = ThreadLocalRandom.current (). nextInt () // Mencetak bilangan bulat acak System.out.println ('Random Integers:' + int2) // Menghasilkan Random menggandakan double dub1 = ThreadLocalRandom.current (). NextDouble () double dub2 = ThreadLocalRandom.current (). NextDouble () // Mencetak sistem ganda acak. out.println ('Ganda Acak:' + dub1) System.out.println ('Ganda Acak:' + dub2)}}

Keluaran:

Contoh 2:

// Program Java untuk mendemonstrasikan kerja ThreadLocalRandom // untuk menghasilkan angka acak. import java.util.concurrent.ThreadLocalRandom public class Main {public static void main (String args []) {// Menghasilkan boolean acak boolean bool1 = ThreadLocalRandom.current (). nextBoolean () boolean bool2 = ThreadLocalRandom.current (). nextBoolean () // Cetak Random Boolean System.out.println ('Random Boolean:' + bool1) System.out.println ('Random Boolean:' + bool2)}}

Keluaran:

Pindah dengan artikel ini tentang bilangan acak dan generator string di java

Menghasilkan String acak di Java

Kita dapat membuat string alfanumerik acak dengan menggunakan metode berikut:

Pindah dengan artikel ini tentang bilangan acak dan generator string di java

Menggunakan Matematika . acak ( )

Di bawah ini adalah Contoh untuk memahami konsep dengan lebih baik.

// Program Java yang menghasilkan String AlphaNumeric acak // menggunakan metode Math.random () public class Main {// mendefinisikan fungsi untuk menghasilkan string acak dengan panjang n statis String RequiredString (int n) {// memilih karakter acak dari String String ini AlphaNumericString = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' + '0123456789' + 'abcdefghijklmnopqrstuvxyz' // buat ukuran StringBuffer dari AlphaNumericString StringBuilder s = new StringBuilder (n) int y untuk (y = 0

Keluaran:

Pindah dengan artikel ini tentang bilangan acak dan generator string di java

Menggunakan CharSet

Kami harus menggunakan paket yang berbeda di sini yaitu paket java.nio.charset.
Di bawah ini adalah Contoh bergambar.

// Program Java menghasilkan String AlphaNumeric acak // menggunakan CharSet import java.util. * Import java.nio.charset. * Class Main {static String RequiredString (int n) {// length declaration byte [] array = new byte [256] new Random (). NextBytes (array) String randomString = new String (array, Charset.forName ('UTF-8')) // Membuat StringBuffer StringBuffer ra = new StringBuffer () // Menambahkan 20 karakter alfanumerik pertama untuk (int i = 0 i = 'a' && ch = 'A' && ch = '0' && ch 0)) {ra.append (ch) n--}} // mengembalikan string yang dihasilkan mengembalikan ra.toString ()} public static void main (String [] args) {// ukuran string alfanumerik acak int n = 10 // Dapatkan dan tampilkan string alfanumerik System.out.println (RequiredString (n))}}

Keluaran:

Pindah dengan artikel ini tentang bilangan acak dan generator string di java

Menggunakan Ekspresi Reguler

Implementasinya adalah sebagai Contoh berikut.

// Program Java menghasilkan String AlphaNumeric acak // menggunakan metode Ekspresi Reguler import java.util. * Import java.nio.charset. * Class Main {static String getAlphaNumericString (int n) {// length declaration byte [] array = byte baru [256] new Random (). nextBytes (array) String randomString = new String (array, Charset.forName ('UTF-8')) // Membuat StringBuffer StringBuffer ra = new StringBuffer () // hapus semua spasi char String AlphaNumericString = randomString .replaceAll ('[^ A-Za-z0-9]', '') // Tambahkan 20 karakter alfanumerik pertama // dari String acak 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 string yang dihasilkan return ra.toString ()} public static void main (String [] args) {// ukuran string alfanumerik acak int n = 15 // Dapatkan dan tampilkan string alfanumerik System.out.println (getAlphaNumericString (n))}}

Keluaran:

Demikianlah kita sampai pada akhir artikel ini. Jika Anda ingin mempelajari lebih lanjut, lihat oleh Edureka, perusahaan pembelajaran online terpercaya. Kursus pelatihan dan sertifikasi Java J2EE dan SOA Edureka dirancang untuk melatih Anda baik konsep inti dan lanjutan Java bersama dengan berbagai kerangka kerja Java seperti Hibernate & Spring.

Ada pertanyaan untuk kami? Harap sebutkan di bagian komentar blog ini dan kami akan menghubungi Anda kembali secepatnya.