生成随机指定位数的字符串
1. 生成包含字母的字符串
/**
* 生成随机用户名,数字和字母组成
*
* @param length 长度
* @return String
*/
public static final String getStringRandom(int length) {
String val = "";
Random random = new Random();
//参数length,表示生成几位随机数
for (int i = 0; i < length; i++) {
String charOrNum = random.nextInt(2) % 2 == 0 ? "char" : "num";
//输出字母还是数字
if ("char".equalsIgnoreCase(charOrNum)) {
//输出是大写字母还是小写字母
int temp = random.nextInt(2) % 2 == 0 ? 65 : 97;
val += (char) (random.nextInt(26) + temp);
} else if ("num".equalsIgnoreCase(charOrNum)) {
val += String.valueOf(random.nextInt(10));
}
}
return val;
}
2. 生成未包含字母的字符串
/**
* 获取随机数字
*
* @param length 长度
* @return string
*/
public static String getNumRandom(String length) {
// 生成随机length位码
String num = "";
while (num.length() < Integer.parseInt(length)) {
num += (int) (Math.random() * 10);
}
return num;
}
结语
记录,便于后期的查找