产生一个长度为15位的随机字符串:大写小写和数字,最后输出该随机字符串
程序员文章站
2024-03-04 09:28:17
...
产生一个长度为15位的随机字符串:大写小写和数字,最后输出该随机字符串
public class Test10 {
public static void main(String[] args) {
// 产生一个长度为15位的随机字符串:大写小写和数字,最后输出该随机字符串
// 1.定义StringBuiler,用于存储产生的随机字符
StringBuilder sb = new StringBuilder();
// 2.循环产生随机字符
for (int i = 0; i < 15; i++) {
//需要解决当前产生的字符应该是数字大写字母还是小写字母
int num = (int) (Math.random()*10000);
int result = num%3;//0 or 1 or 2
int chInt;
char ch;
switch (result) {
case 0://产生一个大写字符
chInt = (int) (Math.random()*(91-65)+65);
ch = (char) chInt;
// 6.将产生的字符添加到StringBuiler中
sb.append(ch);
break;
case 1://产生一个数字
// 4.中间5个字符,随机对应的数字[0,10)
chInt = (int) (Math.random()*10);
// 6.将产生的数字添加到StringBuiler中
sb.append(chInt);
break;
case 2://产生一个小写字符
// 5.后面5个字符随机产生小写字符,小写字母对应的数字[97,123)
chInt = (int) (Math.random()*(123-97)+97);
ch = (char) chInt;
// 6.将产生的字符添加到StringBuiler中
sb.append(ch);
break;
default:
break;
}
}
// 7.输出随机产生的字符串
System.out.println("sb:"+sb);
}
}