Java随机数的几种实现方式
立即下载
资源介绍:
Java实现随机数的几种方式:1.使用Math.random产生随机数;2.使用Random产生随机数;3.使用ThreadLocalRandom产生随机数,在多线程场景下效率更高;4.使用SecureRandom产生随机数,更安全。本代码实现了产生一个指定位数的随机数字字符串以及指定位数的随机数字,代码可以直接集成到自己的工程中作为工具类使用。
package com.feifanmaster.xtool.util.random;
import java.security.SecureRandom;
/**
* 使用SecureRandom产生随机数,更安全
*
* @author Jackie
* @date 2024/09/02
*/
public class SecurityRandom {
/**
* 产生一个随机数字字符串
*
* @param n 字符串长度,最长12位
* @return 随机数字字符串
*/
public static String randomStr(int n) {
int len = n;
if (len > 12) {
len = 12;
}
SecureRandom random = new SecureRandom();
double randomNum = random.nextDouble();
String randomNumStr = Double.toString(randomNum);
return randomNumStr.substring(2, len + 2);
}
/**
* 产生一个随机数字
*
* @param n 数字位数,比如:n=3,则产生0~999的随机数
* @return 随机数字
*/
public static int randomNum(int n) {
int len = n;
if (len > 8) {
len = 8;
}
SecureRandom random = new SecureRandom();
double randomNum = random.nextDouble() * Math.pow(10, len);
return (int)randomNum;
}
public static void main(String[] args) {
for (int i = 0; i < 10; i++) {
System.out.println(randomStr(6));
System.out.println(randomNum(1));
}
}
}