java如何生成随机数?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java如何生成随机数?相关的知识,希望对你有一定的参考价值。

可以先通过random方法生成一个随机数,然后将结果乘以100,然后再利用int方法进行转换,就可以得到一个0到99的随机整数。 参考技术A 输入代码
public static int suiji = new Random().nextInt(10);
public static void main(String[] args)

System.out.print(suiji);

其中,public static int suiji = new Random().nextInt(10);这一行是生成随机数的关键,它可以生成0到9的一个随机数
参考技术B UUID.randomUUID().toString() 参考技术C 1.第一种:new Random() 需要借助java.util.Random类来产生一个随机数发生器,也是最常用的一种,构造函数有两个,Random()和Random(long seed)。第一个就是以当前时间...
2.第二种:Math.random() Math.random()方法返回的数值是[0.0,1.0)的double型数值,由于...
参考技术D 你想生成的随机数范围是多少?

JAVA中 如何产生一个特定范围的随机数

JAVA中 如何产生一个特定范围的随机数 比如 我要产生一个0 1 2 这三个数中的一个数
再比如 我要产生一个 5到26的一个随机数 这些要怎么写 或者产生一个随机数后 怎样取余来达到这么目的

java.util
类 Random
java.lang.Object
java.util.Random
所有已实现的接口:
Serializable
直接已知子类:
SecureRandom

--------------------------------------------------------------------------------

public class Randomextends Objectimplements Serializable此类的实例用于生成伪随机数流。此类使用 48 位的种子,使用线性同余公式对其进行修改(请参阅 Donald Knuth 的《The Art of Computer Programming, Volume 2》,第 3.2.1 节)。

如果用相同的种子创建两个 Random 实例,则对每个实例进行相同的方法调用序列,它们将生成并返回相同的数字序列。为了保证属性的实现,为类 Random 指定了特定的算法。为了 Java 代码的完全可移植性,Java 实现必须让类 Random 使用此处所示的所有算法。但是允许 Random 类的子类使用其他算法,只要其符合所有方法的常规协定即可。

Random 类所实现的算法使用一个 protected 实用工具方法,每次调用它都可提供最多 32 个伪随机生成的位。

很多应用程序会发现 Math 类中的 random 方法更易于使用。

从以下版本开始:
JDK1.0
另请参见:
Math.random(), 序列化表格

--------------------------------------------------------------------------------

构造方法摘要
Random()
创建一个新的随机数生成器。
Random(long seed)
使用单个 long 种子创建一个新随机数生成器: public Random(long seed) setSeed(seed); next 方法使用它来保存随机数生成器的状态。
方法摘要
protected int next(int bits)
生成下一个伪随机数。
boolean nextBoolean()
返回下一个伪随机数,它是从此随机数生成器的序列中取出的、均匀分布的 boolean 值。
void nextBytes(byte[] bytes)
生成随机字节并将其置于用户提供的字节数组中。
double nextDouble()
返回下一个伪随机数,它是从此随机数生成器的序列中取出的、在 0.0 和 1.0之间均匀分布的 double 值。
float nextFloat()
返回下一个伪随机数,它是从此随机数生成器的序列中取出的、在 0.0 和 1.0 之间均匀分布的 float 值。
double nextGaussian()
返回下一个伪随机数,它是从此随机数生成器的序列中取出的、呈高斯(“正常地”)分布的 double 值,其平均值是 0.0,标准偏差是 1.0。
int nextInt()
返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的 int 值。
int nextInt(int n)
返回一个伪随机数,它是从此随机数生成器的序列中取出的、在 0(包括)和指定值(不包括)之间均匀分布的 int值。
long nextLong()
返回下一个伪随机数,它是从此随机数生成器的序列中取出的、均匀分布的 long 值。
void setSeed(long seed)
使用单个 long 种子设置此随机数生成器的种子。
楼下的,直接说不理解有什么用
参考技术A 随机数的生成方法是“new Random()”。
生成范围为(0-1)之间的小数,不包含两个端点。
如:生成5位随机整数“int radomInt = new Random().nextInt(99999)”即可。
参考技术B 生成0-2之间的随机数,包括2
Random rand = new Random();
int randNum = rand.nextInt(3);
生成5-26之间的随机数,包括26
int randNum = rand.nextInt(22)+5;本回答被提问者采纳
参考技术C

生成0-2之间的随机数,包括2

Random rand = new Random();

int randNum = rand.nextInt(3);

生成5-26之间的随机数,包括26

int randNum = rand.nextInt(22)+5;

java中让随机数产生在一个区间段:

假设你要产生5到10之间的随机数,可以用下面方法:

int Min = 5;

int Max = 10;

int result = Min + (int)(Math.random() * ((Max - Min) + 1));

参考技术D Math.random()产生一个0-1的随机数
你用一个1-10的数字去乘就行了。
比如你要0,1,2
(int)(Math.random()*3)
同理:乘以100内的数字就行
5-26
就大于(int)((Math.random()*6)
小于(int)(Math.random()*27)
或者(int)(Math.random()*22 +5)追问

int)(Math.random()*3 这样弄出的全是0

追答

你用 错了!(int)(Math.random()*3 ) 少了半个括号

以上是关于java如何生成随机数?的主要内容,如果未能解决你的问题,请参考以下文章

JAVA如何生成一个随机整数

Java如何生成一定范围内的随机数? [复制]

Java中如何生成随机数

在java中,如何输出不重复的几个随机数

java如何实现这样的随机数字呢?

JAVA中 如何产生一个特定范围的随机数