杰瑞科技汇

Java 0-100随机数如何生成?

在 Java 中生成 0 到 100 之间的随机数(包括 0 和 100),可以使用 java.util.Random 类或 Java 8+ 引入的 ThreadLocalRandom 类,以下是几种常见的方法:

Java 0-100随机数如何生成?-图1
(图片来源网络,侵删)

方法 1:使用 java.util.Random(适用于单线程)

import java.util.Random;
public class RandomExample {
    public static void main(String[] args) {
        Random random = new Random();
        int randomNumber = random.nextInt(101); // 生成 0-100 的随机数
        System.out.println("随机数: " + randomNumber);
    }
}

说明

  • nextInt(101) 生成一个范围在 [0, 100] 的随机整数(包含 0 和 100)。

方法 2:使用 ThreadLocalRandom(推荐,适用于多线程)

import java.util.concurrent.ThreadLocalRandom;
public class RandomExample {
    public static void main(String[] args) {
        int randomNumber = ThreadLocalRandom.current().nextInt(0, 101); // [0, 100]
        System.out.println("随机数: " + randomNumber);
    }
}

说明

  • ThreadLocalRandom 是 Java 7 引入的,性能更好且线程安全。
  • nextInt(origin, bound) 的范围是 [origin, bound),因此需要写 0, 101 来包含 100。

方法 3:使用 Math.random()(简单但性能较低)

public class RandomExample {
    public static void main(String[] args) {
        double randomDouble = Math.random(); // [0.0, 1.0)
        int randomNumber = (int) (randomDouble * 101); // [0, 100]
        System.out.println("随机数: " + randomNumber);
    }
}

说明

  • Math.random() 返回 [0.0, 1.0)double 值,乘以 101 后取整即可得到 0-100 的整数。

方法 4:使用 SecureRandom(适用于安全敏感场景)

import java.security.SecureRandom;
public class RandomExample {
    public static void main(String[] args) {
        SecureRandom secureRandom = new SecureRandom();
        int randomNumber = secureRandom.nextInt(101); // [0, 100]
        System.out.println("随机数: " + randomNumber);
    }
}

说明

Java 0-100随机数如何生成?-图2
(图片来源网络,侵删)
  • SecureRandom 用于生成密码学安全的随机数,性能较低,但安全性高。

方法 适用场景 线程安全 性能
Random 单线程 不安全 一般
ThreadLocalRandom 多线程(推荐) 安全
Math.random() 简单场景 安全
SecureRandom 安全敏感场景(如加密) 安全

推荐使用 ThreadLocalRandom,除非有特殊需求(如安全加密)。

Java 0-100随机数如何生成?-图3
(图片来源网络,侵删)
分享:
扫描分享到社交APP
上一篇
下一篇