我的思路如下:
1、按照你自定义的规则制作一个字典,该字典包含可构成密码的所有合法字符;
2、在[6, 12]内随机生成一个int作为密码长度;
3、从字典中随机选取一个字符,共选取int次组成密码。
4、还可以制定高级规则,如同种字符不能相邻出现等。[可选]
StringBuffer password = new StringBuffer();
for(int i = 0; i <= (int)(Math.random()*7)+6; i++) {
int ran = (int)(Math.random()*94) + 33;
char c = (char) ran;
password.append(c);
}
System.out.println(password);
Random类试试。