public static void main(String[] args) {
/*
*方法一:
* ASCII表中每个字母和数字都有对应的编号
* 65~90 A~Z
* 97~122 a~Z
* 48~57 0~9
* */
for (int i = 0; i <10 ; i++) {
int a = (int) (Math.random()*78)+50;
if(a>=48&&a<=57||a>=65&&a<=90||a>=97&&a<=122){
System.out.print((char)a);
}else {
i--;
}
}
//调用test1方法
System.out.println("\n"+"test1(5) = " + test1(5));
//调用test02方法
System.out.println("\n"+"test02(5) = " + test02(5));
}
/**
* 方法二
*/
public static String test1(int len){
//UUID生成随机的一串字符,通过toString的subString方法截取前面几个
return UUID.randomUUID().toString().substring(0,len);
}
/**
* 方法三
* @param len
* @return
*/
public static String test02(int len){
String str = "1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKKLZXCVBNM";
String s1 = "";
Random random = new Random();
for (int i = 0; i <len ; i++) {
//字符串拼接,随机生成一个数范围是0到str的长度,str.charAt()获取指定位置的字符
s1+=str.charAt(random.nextInt(str.length()));
}
return s1;
}
给定一个长度,随机产生一个该长度的字符串,由大写,小写字母以及数字组成
本文介绍如何在Java中利用Math.random()和字符数组生成一个指定长度的随机字符串,该字符串由大写、小写字母和数字混合组成,适合用于密码生成或者测试数据填充等场景。
3686

被折叠的 条评论
为什么被折叠?



