在 Java 中获取随机数1. 使用 Math.random() 2. 在 Java 中使用 Random 类。
我想在Java中获得一个介于1到50之间的随机值。
在的帮助下,我该怎么做?Math.random();
如何绑定返回的值?Math.random()
我想在Java中获得一个介于1到50之间的随机值。
在的帮助下,我该怎么做?Math.random();
如何绑定返回的值?Math.random()
第一个解决方案是使用以下类:java.util.Random
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;
另一种解决方案是使用:Math.random()
double random = Math.random() * 49 + 1;
或
int random = (int)(Math.random() * 50 + 1);
int max = 50;
int min = 1;
double random = Math.random() * 49 + 1;
or
int random = (int )(Math.random() * 50 + 1);
这将在int的情况下为您提供从1到50的值,或者在双精度的情况下为您提供从1.0(包括)到50.0(不包括)的值
为什么?
random() 方法返回一个介于 0.0 和 0.9 之间的随机数...,将其乘以 50,因此上限变为 0.0 到 49.999...当你添加1时,它变成1.0到50.999...,现在当你截断到int时,你得到1到50。(感谢评论中的@rup)。leepoint在这两种方法上都写了很棒的文章。
Random rand = new Random();
int value = rand.nextInt(50);
这将给出从 0 到 49 的值。
对于 1 到 50:rand.nextInt((max - min) + 1) + min;
一些Java Random令人敬畏的来源。