我想用Java写一个小程序,随机生成10位的大写字母和数字的混合码,其中数字不得超过4位,有没有高人帮帮忙

例如DHF9DWS2FR,K4P8FJ6EQS这样的输出谢谢啦... 例如DHF9DWS2FR,K4P8FJ6EQS这样的输出
谢谢啦
展开
 我来答
bd周述兵
2010-09-13 · TA获得超过350个赞
知道答主
回答量:135
采纳率:0%
帮助的人:0
展开全部
public class Cl {
/**
* 随机 产生 字符串
*
* @param length
* 字符串的长度
* @return
*/
public static String createCode(int length) {
Random rd = new Random();
String code = "";
int iCode = 0;
int countNum = 0;
for (int i = 0; i < length; i++) {
iCode = rd.nextInt(122);
if ((iCode >= 65 && iCode <= 90) || (iCode >= 97 && iCode <= 122)) {
code += (char) iCode;
} else if (iCode >= 0 && iCode <= 9) {
countNum++;
if (countNum > 4)
i--;
else
code += iCode;
} else
i--;
}
return code;
}

public static void main(String[] args) {
System.out.println(createCode(10));
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
prince_leo
2010-09-13 · TA获得超过600个赞
知道小有建树答主
回答量:462
采纳率:0%
帮助的人:469万
展开全部
public static void main(String[] args) {
Random select = new Random();

// 更改数字可以选择随机出现的字符串长度
int letterNum = 10 + select.nextInt(10);
int nowletter = 0;
char nowlet = ' ';
StringBuffer target = new StringBuffer(50);

out:for (int i = 0; i < 10;) {
// 这里更改数字可以决定出现的字符是出现在什么字符之间
nowletter = select.nextInt(90);
int j=1;
if ((nowletter > 49 && nowletter < 58) || nowletter > 65) {
if(nowletter > 49 && nowletter < 58){
j++;
}
if(j==4)
continue out;
nowlet = (char) nowletter;
target.append(nowlet);
i++;
} else {
continue;
}
}
System.out.println(target);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
隐书生
2010-09-13
知道答主
回答量:15
采纳率:0%
帮助的人:0
展开全部
kankan
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式