Rumah  >  Artikel  >  Java  >  Bagaimana untuk Menjana Nombor Rawak Dalam Julat Tertentu di Jawa?

Bagaimana untuk Menjana Nombor Rawak Dalam Julat Tertentu di Jawa?

Barbara Streisand
Barbara Streisandasal
2024-11-07 08:36:02170semak imbas

How to Generate Random Numbers Within a Specific Range in Java?

Penjanaan Nombor Rawak di Java

Apabila membuat program di Java, keperluan biasa timbul: mendapatkan nombor rawak. Artikel ini menyelidiki teknik untuk menjana nombor rawak dalam julat yang ditentukan, menangani cabaran yang berkaitan dengan menghadkan output Math.random().

Bounding Math.random() Values

Math.random() menjana nilai titik terapung antara 0 dan 1. Untuk mengekang nilai ini dalam julat tertentu, manipulasi diperlukan. Dua pendekatan diguna pakai:

1. Sekatan Berganda:

Pendekatan ini mendarabkan nilai rawak dengan perbezaan antara sempadan bawah dan atas julat yang dikehendaki. Contohnya, untuk mendapatkan nombor rawak antara 1 dan 50:

double random = Math.random() * 49 + 1;

2. Casting Bounding:

Di sini, casting dilakukan untuk menukar nilai rawak titik terapung kepada integer dan menggunakan sempadan bawah dan atas:

int random = (int)(Math.random() * 50 + 1);

Penyelesaian Alternatif : Kelas Rawak

Kelas java.util.Random menyediakan penyelesaian yang lebih komprehensif untuk menjana nombor rawak. Berikut ialah contoh:

import java.util.Random;

Random rand = new Random();

// Obtain a number between [0 - 49].
int n = rand.nextInt(50);

// Add 1 to the result to get a number from the required range
// (i.e., [1 - 50]).
n += 1;

Pilih pendekatan yang paling sesuai dengan kes penggunaan khusus anda dan nikmati fleksibiliti menjana nombor rawak dalam Java.

Atas ialah kandungan terperinci Bagaimana untuk Menjana Nombor Rawak Dalam Julat Tertentu di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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