希望从10个数字0-9和26上字母A-Z中产生无重复的8位随机数,如何产生?
解决方案 »
- String s1 = new String("abc");String s2 = new String("abc");产生了几个对象
- Flex中验证DataGrid的一列?
- 提问
- 郁闷~~~~~~~~
- 这条插入语句应该怎莫写? 请各位大大指点一下
- 用Socket传送、接收exe文件怎么处理???
- java.lang.NoClassDefFoundError,请问如何解决
- 有关RunTime的问题,发言有分
- 网上那有各方面的java书籍下载,最好中文,英文也成
- 谁考过SCJP?能否谈一谈题目和有关事项是怎样的。
- java Applet缩放:当对网页进行拖拉缩放时,如果保证和GUI组件位置不变?
- 帮忙看下这个问题
boolean[] used=new boolean[36];char[] result=new char[8];
for(int i=0;i<result.legnth;i++)
{
int random;//0~36的随机数
while(used[random=(...)]);
used[random]=true;
result[i]=c[random];
}
String 8位无重复字符串=new String(result);
import java.util.*;
class test2 {
static char[] result=new char[8];
static char[] c={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
public static void main(String arg[]) {
randoms();
String s=new String(result);
System.out.println(s);
}
public static void randoms()
{
Random r = new Random();int temp1;
char temp2;
int len = c.length;
for(int i=0;i<8;i++)
{
temp1 = Math.abs(r.nextInt())% len;
result[i] = c[temp1];
temp2 = c[temp1];
c[temp1] = c[len-1];
c[len-1] = temp2;
len--;
}
}
}