package cn.com.paic.utils;
import java.util.Random;
/**
* @Author: ldj
* @Date: 2021/11/15/9:09
* @Description: 生成指定位数的随机数
*/
public class RandomNumber {
public static void main(String[] args) {
System.out.println(getRandomNumber(8));
}
public static String getRandomNumber(int bit){
//定义可变字符串
StringBuilder rs = new StringBuilder();
Random random = new Random();
for (int i = 0; i < bit; i++) {
//0-9
rs.append(random.nextInt(10));
}
return rs.toString();
}
}
运行结果:
17204623
有注意的地方,如果需要将String类型转成数字,不能0开头
private static Long getRandomNumber(int bit) {
//定义可变字符串
StringBuilder rs = new StringBuilder();
Random random = new Random();
for (int i = 0; i < bit; i++) {
Integer integer= random.nextInt(10);
rs.append(integer);
}
if("0".equals(String.valueOf(rs.charAt(0)))) {
rs.setCharAt(0,'1');//0开头替换为1
}
return Long.parseLong(rs.toString());
}
//结合两部分代码
//获取特定位数的随机数字
public static String getRandomNumber(int bit, boolean enableCheck) {
StringBuilder rs = new StringBuilder();
Random random = new Random();
for (int i = 0; i < bit; i++) {
rs.append(random.nextInt(10));
}
//如果是0开头则替换为1
if (enableCheck) {
if ("0".equals(String.valueOf(rs.charAt(0)))) {
rs.setCharAt(0, '1');
}
}
return rs.toString();
}