当前位置:首页 > 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) 之间。如果需要整数,可以结合类型转换使用。

java如何生成随机数

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 提供更强的随机性,适用于密码学或安全敏感场景。

java如何生成随机数

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);

生成随机字符串

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

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中生成随机数可以通过多种方式实现,以下是几种常见的方法: 使用Math.random()方法 Math.random()方法返回一个double类型的伪随机数,范围在[0…

java如何打印数组

java如何打印数组

打印数组的方法 在Java中,打印数组有多种方式,以下是几种常见的方法: 使用Arrays.toString()方法 这种方法适用于一维数组,可以快速将数组转换为字符串形式输出: int[] a…

如何导入java项目

如何导入java项目

导入Java项目的方法 使用IDE导入(如IntelliJ IDEA或Eclipse) 打开IDE后选择导入现有项目,导航至项目根目录(包含pom.xml或build.gradle的文件位置)。IDE…

如何用java编程

如何用java编程

Java编程基础指南 环境配置 安装Java开发工具包(JDK),推荐使用最新版本。配置环境变量,确保JAVA_HOME指向JDK安装路径,并将bin目录添加到系统PATH中。验证安装是否成功: j…

php 实现 java md5

php 实现 java md5

在 PHP 中实现与 Java 相同的 MD5 哈希算法,关键在于确保编码和输出格式的一致性。以下是具体实现方法和注意事项: 确保字符串编码一致 Java 的 String.getBytes() 默…

js实现一个随机数

js实现一个随机数

生成随机整数 使用Math.random()生成一个介于0(包含)和1(不包含)之间的随机小数,再通过数学运算转换为整数。例如生成1到10的随机整数: const randomInt = Math.…