JAVA—咖啡馆

——欢迎访问rogerfan的博客,常来《JAVA——咖啡馆》坐坐,喝杯浓香的咖啡,彼此探讨一下JAVA技术,交流工作经验,分享JAVA带来的快乐!本网站部分转载文章,如果有版权问题请与我联系。

BlogJava 首页 新随笔 联系 聚合 管理
  447 Posts :: 145 Stories :: 368 Comments :: 0 Trackbacks
//根据不同的难度产生随机字母和数字
for(int i=0; readomNumStart.length()<4; i++) {
if(difficult == 1) {

//产生随机的0-9的数字
a = String.valueOf((int)(Math.random() * 10)) ;
}
if(difficult == 2) {

//在0-9和a,b,c,d中随机产生。
String[] readomWord = {"0","1","2","3","4","5","6","7","8","9","a","b","c","d"};
int readomWordIndex = (int)(Math.random() * 13);
a = readomWord[readomWordIndex];
}
if(difficult == 3) {

//产生随机的字母
char readomLetter = (char)(Math.random ()*26+'a');
a = String.valueOf(readomLetter) ;
}
if(difficult == 4) {

//产生随机的数字和字母的组合
String[] readomHard = new String[20];
int readomWordIndex = (int)(Math.random() * 19);
for(int j=0; j<20; j++) {
int readomWordNum = (int)(Math.random() * 10);
char readomLetter = (char)(Math.random ()*26+'a');
if(readomWordNum % 2 == 0) {
readomHard[j] = readomWordNum + "";
}else{
readomHard[j] = String.valueOf(readomLetter);
}
}
a = readomHard[readomWordIndex];
}

//这样写代码比较短。我也参考了许多人的代码大部分都很复杂。我不喜欢写那么多代码,所以就这样写了。还不能知道这样写效率有没有问题,在我本机上运行没有什么感觉。
posted on 2009-05-14 11:40 rogerfan 阅读(440) 评论(1)  编辑  收藏 所属分类: 【Java知识】

Feedback

# re: 【转】关于java产生随机数代码 2009-10-30 18:35 Hiri
用不了那么长吧.
你代码我没看完,太长了.哈哈
自已写了个.稍微验证了下.好像还可以.
看看吧

public class RandomNum
{

private static final int first = 48;
private static final int total = 36;
public static void main(String args[])
{
for(int i=0; i<4 ; i++)
{
int tmp = 0;
if((tmp = (int)(Math.random() * total + first)) > 57)
{
tmp += 39;
}
System.out.print((char)tmp);
}
}
}
  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: