当前位置:首页 > Java

java如何生成随机数

2026-02-04 10:55:06Java

使用 java.util.Random

Random 类是 Java 中最基础的随机数生成工具,可以生成整数、浮点数等类型的随机值。

import java.util.Random;

public class RandomExample {
    public static void main(String[] args) {
        Random random = new Random();

        // 生成 0 到 99 的随机整数
        int randomInt = random.nextInt(100);
        System.out.println("Random Integer: " + randomInt);

        // 生成 0.0 到 1.0 的随机浮点数
        double randomDouble = random.nextDouble();
        System.out.println("Random Double: " + randomDouble);

        // 生成随机布尔值
        boolean randomBoolean = random.nextBoolean();
        System.out.println("Random Boolean: " + randomBoolean);
    }
}

使用 Math.random() 方法

Math.random() 返回一个 double 类型的伪随机数,范围在 [0.0, 1.0) 之间。如果需要整数,可以结合类型转换使用。

public class MathRandomExample {
    public static void main(String[] args) {
        // 生成 0.0 到 1.0 的随机浮点数
        double randomDouble = Math.random();
        System.out.println("Random Double: " + randomDouble);

        // 生成 0 到 99 的随机整数
        int randomInt = (int)(Math.random() * 100);
        System.out.println("Random Integer: " + randomInt);
    }
}

使用 ThreadLocalRandom 类(Java 7+)

ThreadLocalRandomRandom 类的线程安全优化版本,适用于多线程环境。

import java.util.concurrent.ThreadLocalRandom;

public class ThreadLocalRandomExample {
    public static void main(String[] args) {
        // 生成 0 到 99 的随机整数
        int randomInt = ThreadLocalRandom.current().nextInt(100);
        System.out.println("Random Integer: " + randomInt);

        // 生成 10 到 99 的随机整数(指定范围)
        int boundedInt = ThreadLocalRandom.current().nextInt(10, 100);
        System.out.println("Bounded Random Integer: " + boundedInt);
    }
}

使用 SecureRandom 类(加密安全)

SecureRandom 提供更强的随机性,适用于密码学或安全敏感场景。

import java.security.SecureRandom;

public class SecureRandomExample {
    public static void main(String[] args) {
        SecureRandom secureRandom = new SecureRandom();

        // 生成 0 到 99 的随机整数
        int randomInt = secureRandom.nextInt(100);
        System.out.println("Secure Random Integer: " + randomInt);

        // 生成随机字节数组
        byte[] randomBytes = new byte[16];
        secureRandom.nextBytes(randomBytes);
        System.out.println("Random Bytes: " + Arrays.toString(randomBytes));
    }
}

生成指定范围的随机数

如果需要生成某个范围内的随机数,可以使用以下方式:

int min = 10;
int max = 20;
int randomInRange = ThreadLocalRandom.current().nextInt(min, max + 1);
System.out.println("Random in Range: " + randomInRange);

生成随机字符串

结合随机数和字符集可以生成随机字符串:

java如何生成随机数

import java.util.Random;

public class RandomStringExample {
    public static void main(String[] args) {
        String characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
        Random random = new Random();
        StringBuilder sb = new StringBuilder(10);

        for (int i = 0; i < 10; i++) {
            int index = random.nextInt(characters.length());
            sb.append(characters.charAt(index));
        }

        System.out.println("Random String: " + sb.toString());
    }
}

标签: 随机数java
分享给朋友:

相关文章

如何运行java程序

如何运行java程序

编写Java代码 创建一个以.java为扩展名的文件,例如HelloWorld.java。文件内容需包含一个类定义,类名必须与文件名一致。例如: public class HelloWorld {…

java如何创建包

java如何创建包

创建Java包的步骤 在Java中,包(package)用于组织和管理类文件,避免命名冲突。以下是创建Java包的详细方法: 定义包名 在Java源文件的开头使用package关键字声明包名。包名…

如何编译java

如何编译java

安装JDK 确保系统已安装Java Development Kit(JDK)。可通过命令行输入 javac -version 和 java -version 验证是否安装成功。若未安装,需从Oracl…

如何安装java软件

如何安装java软件

下载Java安装包 访问Oracle官方网站或OpenJDK开源项目页面,选择适合操作系统的Java版本(如Windows、macOS或Linux)。对于个人使用,通常下载JDK(Java Devel…

如何搭建java开发环境

如何搭建java开发环境

下载并安装JDK 从Oracle官网或OpenJDK下载适合操作系统的JDK版本。运行安装程序并按照提示完成安装,建议选择默认路径以减少配置复杂度。 配置环境变量 在系统环境变量中添加JAVA_HO…

如何阅读java源码

如何阅读java源码

阅读Java源码的方法 选择合适的源码项目 初学者建议从JDK核心类库(如java.lang、java.util)或知名开源项目(如Spring、Guava)入手。选择文档完善、社区活跃的项目能降低理…