📅  最后修改于: 2023-12-03 14:48:52.863000             🧑  作者: Mango
在 Java 中,生成两个数字之间的随机数是一项很有用的任务。这种需求通常出现在游戏、密码学和统计学等领域。本文将介绍如何在 Java 中生成两个数字之间的随机数。
Java 中 Math 类提供了一个静态方法 random()
,可以返回一个大于等于 0.0 且小于 1.0 的 double 类型的伪随机数。
double random = Math.random();
要生成在 [min, max]
范围内的随机数,可以使用以下代码:
double random = Math.random() * (max - min + 1) + min;
然而,上述代码生成的随机数可能是一个小数。如果要生成整数,可以使用以下代码:
int random = (int)(Math.random() * (max - min + 1) + min);
Java 中还提供了一个 Random
类,通过调用其 nextInt(int n)
方法可以生成一个大于等于 0 且小于 n 的随机整数。要生成在 [min, max]
范围内的随机整数,可以使用以下代码:
Random random = new Random();
int result = random.nextInt(max - min + 1) + min;
Java 7 引入了一个新的 ThreadLocalRandom
类,通过调用其 nextInt(int origin, int bound)
方法可以生成一个大于等于 origin 且小于 bound 的随机整数。要生成在 [min, max]
范围内的随机整数,可以使用以下代码:
ThreadLocalRandom random = ThreadLocalRandom.current();
int result = random.nextInt(min, max + 1);
Java 中生成两个数字之间的随机数有多种方式。使用 Math.random()
方法可以生成大量的随机数,但是需要手动转换为特定范围内的随机数。使用 Random
类和 ThreadLocalRandom
类可以更方便地生成特定范围内的随机数。在应用程序中选择适当的方法来生成随机数,可以提高程序的性能和可读性。