java 生成100以内10个不重复的随机数,用Math.random()来做,求代码

如题所述

import java.util.HashSet;
import java.util.Set;

public class RandomDemo {
public static void main(String[] args){
Set<Integer> set=new HashSet<Integer>();

boolean panduan=true;
while(true){
int z=(int)(Math.random()*100+1);
panduan=set.add(z);
if(!panduan){
continue;
}
if(set.size()>=10){
break;
}

}
System.out.println(set);

}
}

输出这个set就可以看到值了!记得给分。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-09-03
public class Demo {

/**
 * @param args
 */
public static void main(String[] args) {
// TODO Auto-generated method stub
int a[]=new int[100];
for(int i=0;i<100;i++){
a[i]=i;
}
for(int i=0;i<10;i++){
int b=(int) (Math.random()*101);
int c=a[99-i];
a[99-i]=a[b];
a[b]=c;
System.out.println(a[99-i]);
}
}
}

a[99]...a[90]为需要的10个随机数

第2个回答  2013-09-03
生成一个,判断是否存在,存在则重新生成;不存在,就生成下一个。
相似回答