Java 按格式化顺序生成随机字母数字字符串
请问如何在Java中以这种格式化的顺序生成一个随机数字符串。字符串长度为5个字符(按以下格式指定) 字母数字 每一个字符都是随机的,但格式如上所述 这是我目前遇到的问题:首先,它从字母表中随机打印50个字符Java 按格式化顺序生成随机字母数字字符串,java,random,Java,Random,请问如何在Java中以这种格式化的顺序生成一个随机数字符串。字符串长度为5个字符(按以下格式指定) 字母数字 每一个字符都是随机的,但格式如上所述 这是我目前遇到的问题:首先,它从字母表中随机打印50个字符 import java.util.Random; public class HelloWorld{ public static void main(String []args){ Random r = new Random(); String
import java.util.Random;
public class HelloWorld{
public static void main(String []args){
Random r = new Random();
String[] alphabet = {"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"};
int[] number = {1,2,3,4,5,6,7,8,9,0};
for (int i = 0; i < 5; i++) {
System.out.printf("%s,%s,%d,%d,%d\n",
alphabet[i].charAt(r.nextInt(alphabet.length())),
number[i].charAt(r.nextInt(number.length())) );
} // prints 50 random characters from alphabet
}
}
import java.util.Random;
公共类HelloWorld{
公共静态void main(字符串[]args){
随机r=新随机();
字符串[]字母={“A”、“B”、“C”、“D”、“E”、“F”、“G”、“H”、“I”、“J”、“K”、“L”、“M”、“N”、“O”、“P”、“Q”、“R”、“S”、“T”、“U”、“V”、“W”、“X”、“Y”、“Z”};
int[]数={1,2,3,4,5,6,7,8,9,0};
对于(int i=0;i<5;i++){
System.out.printf(“%s,%s,%d,%d,%d\n”,
字母[i].charAt(r.nextInt(alphabet.length()),
数字[i].charAt(r.nextInt(number.length());
}//从字母表中随机打印50个字符
}
}
如何修复它?代码:
public class Try{
public static void main(String args[]){
System.out.println("Generated String : " + generate());
}
public static int random(int low, int high){
return ((int)(Math.random()*(high-low)) + low);
}
public static String generate(){
String result = "";
result += (char)random(65, 91);
result += (char)random(65, 91);
result += random(0, 10);
result += random(0, 10);
result += random(0, 10);
return result;
}
}
┌─[jaysmito@parrot]─[~]
└──╼ $java Try.java
Generated String : UX426
┌─[jaysmito@parrot]─[~]
└──╼ $java Try.java
Generated String : NJ662
输出:
public class Try{
public static void main(String args[]){
System.out.println("Generated String : " + generate());
}
public static int random(int low, int high){
return ((int)(Math.random()*(high-low)) + low);
}
public static String generate(){
String result = "";
result += (char)random(65, 91);
result += (char)random(65, 91);
result += random(0, 10);
result += random(0, 10);
result += random(0, 10);
return result;
}
}
┌─[jaysmito@parrot]─[~]
└──╼ $java Try.java
Generated String : UX426
┌─[jaysmito@parrot]─[~]
└──╼ $java Try.java
Generated String : NJ662
当前代码的问题是什么?请注意,您的介绍在五个部分之间使用了破折号(
-
),而printf()
使用逗号。(该类的名称令人恼火。)