我想生成类似的随机数
ADF1845CFT
ADF1864ATY
ADF18AT65Y
注意:我修复了ADF18 我只想接下来的5位数字和包机
我成功创建了带数字的5位数
我正在使用各种解决方案
等。方法
通过这些方法,我可以创建成功的随机5位数字。
任何帮助感谢......
答案 0 :(得分:7)
你可以使用随机UUID ......
buttonDevs
答案 1 :(得分:2)
您可以使用apache commons-lang RandomStringUtils.randomAlphanumberic
:
"ADF18" + RandomStringUtils.randomAlphanumberic(5);
答案 2 :(得分:2)
String random5Digts = UUID.randomUUID().toString().substring(0, 5);
String randomNumber="ADF18"+random5Digts;
//code to change lower letters to uppercase
StringBuilder sb = new StringBuilder(randomNumber);
for (int index = 0; index < sb.length(); index++) {
char c = sb.charAt(index);
if (Character.isLowerCase(c)) {
sb.setCharAt(index, Character.toUpperCase(c));
}
}
System.out.println(sb.toString());
答案 3 :(得分:2)
import java.util.Random;
public class MyStringRandomGen {
private static final String CHAR_LIST =
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
private static final int RANDOM_STRING_LENGTH = 5;// change the number as u want.
/**
* This method generates random string
* @return
*/
public String generateRandomString(){
StringBuffer randStr = new StringBuffer();
for(int i=0; i<RANDOM_STRING_LENGTH; i++){
int number = getRandomNumber();
char ch = CHAR_LIST.charAt(number);
randStr.append(ch);
}
return randStr.toString();
}
/**
* This method generates random numbers
* @return int
*/
private int getRandomNumber() {
int randomInt = 0;
Random randomGenerator = new Random();
randomInt = randomGenerator.nextInt(CHAR_LIST.length());
if (randomInt - 1 == -1) {
return randomInt;
} else {
return randomInt - 1;
}
}
public static void main(String a[]){
MyStringRandomGen msr = new MyStringRandomGen();
System.out.println(msr.generateRandomString());
System.out.println(msr.generateRandomString());
System.out.println(msr.generateRandomString());
System.out.println(msr.generateRandomString());
System.out.println(msr.generateRandomString());
System.out.println(msr.generateRandomString());
System.out.println(msr.generateRandomString());
}
}