不管是生成随机数字随机字母随机数字或字母随机ASCII码都是通过RandomStringUtils的random实现的
首先贴上测试代码:
String value = " ";
//随机数(15为随机数长度。第一个布尔为是否字母,第二个是是否数字)
if (name == "random") {
value = RandomStringUtils.random(15, a, b);
}//随机ASCII
else if (name == "randomAscii") {
value = RandomStringUtils.randomAscii(15);
}//随机字母
else if (name == "randomAlphabetic") {
value = RandomStringUtils.randomAlphabetic(15);
}//随机数字
else if (name == "randomNumeric") {
value = RandomStringUtils.randomNumeric(15);
} //随机字母数字
else if (name == "randomAlphanumeric") {
value = RandomStringUtils.randomAlphanumeric(15);
}
return value;
}
public static void main(String[] args) {
(调用方法,非数字,非字母)
System.out.println(testRandomStringUtils("randomAscii", false, false));
// SpringApplication.run(AppConfig.class, args);
}
(随机数第一个为是否填充随机字母,第二个是是否填充随机数字,第一个为true即生成随机字母,第二个为true生成随机数字,都为true即生成随机字母和数字,第一个传递的参数为随机数的长度,实现都是调用random)
public static String random(int count) {
return random(count, false, false);
}
public static String randomAscii(int count) {
return random(count, 32, 127, false, false);
}
public static String randomAlphabetic(int count) {
return random(count, true, false);
}
public static String randomAlphanumeric(int count) {
return random(count, true, true);
}
public static String randomNumeric(int count) {
return random(count, false, true);
}
public static String random(int count, boolean letters, boolean numbers) {
return random(count, 0, 0, letters, numbers);
}
public static String random(int count, int start, int end, boolean letters, boolean numbers) {
return random(count, start, end, letters, numbers, (char[])null, RANDOM);
}
public static String random(int count, int start, int end, boolean letters, boolean numbers, char[] chars) {
return random(count, start, end, letters, numbers, chars, RANDOM);
}
public static String random(int count, int start, int end, boolean letters, boolean numbers, char[] chars, Random random) {。。。}