其实很容易写,这里贴出来只是想说代码还是写的优雅点好看。
public class Test { private static final SecureRandom RANDOM = new SecureRandom(); /** * 获取6位验证码 * * @param num * @return */ public static String getRandString(int num) { return StringUtils.leftPad(Integer.toString(RANDOM.nextInt((int) Math .round(Math.pow(10, num)))), num, '0'); } public static void main(String[] args) { int num = 6; //10的6次方 double a = Math.pow(10, num); System.out.println(a); //转为整形 int i = (int) Math.round(a); System.out.println(i); //随机产生一个10的6次方之内的数 int i1 = RANDOM.nextInt(i); System.out.println(i1); //转为字符串 String i2 = Integer.toString(i1); System.out.println(i2); //不够6位补零 String i3 = StringUtils.leftPad(i2, num, '0'); System.out.println(i3); } }