Java 我们可以按照regex/^[0-9A-F]生成多个随机字符串吗$/
我们可以按照regex/^[0-9A-F]生成多个随机字符串吗$/ 我已经写了下面的代码,有没有更好的方法来生成它,请不要使用任何lib,只使用javaapiJava 我们可以按照regex/^[0-9A-F]生成多个随机字符串吗$/,java,Java,我们可以按照regex/^[0-9A-F]生成多个随机字符串吗$/ 我已经写了下面的代码,有没有更好的方法来生成它,请不要使用任何lib,只使用javaapi public static void printRandomStrings(int numOfStrings){ Random random = new Random(); char[] chars = {'A','B','C','D','E','F'}; // 6 characters for(i
public static void printRandomStrings(int numOfStrings){
Random random = new Random();
char[] chars = {'A','B','C','D','E','F'}; // 6 characters
for(int i=0;i<numOfStrings;i++){
String randomString = "";
for(int j=0;j<4;j++){
int choice = random.nextInt(2); // 0 -1
if(choice == 1){
randomString= randomString+generateRandomInt(random);
}else{
randomString= randomString+generateRandomChar(random,chars);
}
}
System.out.println(randomString);
}
}
public static int generateRandomInt(Random random){
return random.nextInt(10);
}
public static char generateRandomChar(Random random,char[] chars){
int charIdx = random.nextInt(6);
return chars[charIdx];
}
publicstaticvoidprintrandomstrings(int numOfStrings){
随机=新随机();
char[]chars={'A','B','C','D','E','F'};//6个字符
对于(inti=0;i)您所说的更好是什么意思?您的标准是什么?(速度(不使用java)、可读性……)请注意,您的方法始终生成4个字符的字符串。这是要求的一部分吗?另外,请注意,您代码中的一个主要缺陷是,6个字符“a”到“F”有相同的机会显示为10个字符“0”到“9”。因为它们较少,所以它们将在随机字符串中过度表示。