在 Java 中生成随机数有多种方式,下面将介绍几种常见的实现方式,包括使用 Java 标准库以及一些第三方库。每种方式都会详细介绍其步骤流程,并提供示例代码。
这是 Java 内置的一个随机数生成类,可以生成伪随机数。
步骤流程:
Random
对象。nextInt()
、 nextDouble()
等)生成不同类型的随机数。示例代码:
import java.util.Random;
public class RandomExample {
public static void main(String[] args) {
Random random = new Random();
// 生成随机整数
int randomInt = random.nextInt(100); // 生成0到99的随机整数
System.out.println("Random Integer: " + randomInt);
// 生成随机浮点数
double randomDouble = random.nextDouble(); // 生成0.0到1.0之间的随机浮点数
System.out.println("Random Double: " + randomDouble);
}
}
这是 Java 7 引入的一个改进的随机数生成类,专门用于多线程环境下生成随机数。
步骤流程:
ThreadLocalRandom.current()
获取当前线程的 ThreadLocalRandom
对象。nextInt()
、 nextDouble()
等)生成不同类型的随机数。示例代码:
import java.util.concurrent.ThreadLocalRandom;
public class ThreadLocalRandomExample {
public static void main(String[] args) {
ThreadLocalRandom random = ThreadLocalRandom.current();
int randomInt = random.nextInt(50, 100); // 生成50到99的随机整数
System.out.println("Random Integer: " + randomInt);
double randomDouble = random.nextDouble(); // 生成0.0到1.0之间的随机浮点数
System.out.println("Random Double: " + randomDouble);
}
}
对于 Maven 和 Gradle 依赖坐标,Java 标准库不需要额外的依赖。
Apache Commons Lang 是一个常用的 Java 第三方库,其中的 RandomUtils
类提供了生成随机数的方法。
步骤流程:
RandomUtils.nextInt()
、 RandomUtils.nextDouble()
等方法生成随机数。示例代码:
<!-- Maven 依赖 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version>
</dependency>
// Gradle 依赖
implementation 'org.apache.commons:commons-lang3:3.12.0'
import org.apache.commons.lang3.RandomUtils;
public class ApacheCommonsRandomExample {
public static void main(String[] args) {
int randomInt = RandomUtils.nextInt(50, 100); // 生成50到99的随机整数
System.out.println("Random Integer: " + randomInt);
double randomDouble = RandomUtils.nextDouble(0, 1); // 生成0.0到1.0之间的随机浮点数
System.out.println("Random Double: " + randomDouble);
}
}
通过上述几种方式,你可以在 Java 中生成随机数,并根据需要选择适合你项目的方式。