永发信息网

java 怎么随机取出5个0——10的不同随机数?要不同的

答案:4  悬赏:60  手机版
解决时间 2021-03-20 06:25
java 怎么随机取出5个0——10的不同随机数?要不同的
最佳答案
public class TestRandom{
public static void main(String[] args){
Random a=new Random();
int s[]=new int[5];
for (int i = 0; i < s.length;) {
s[i]=a.nextInt(10);
if(CheckRandom(s,s[i],i)){
System.out.println("第"+(i+1)+"个随机数是:"+s[i]);
i++;
}
}
}
public static boolean CheckRandom(int c[],int t,int l){//检查生成的随机数是否存在与数组中
for (int i = 0; i < c.length; i++) {
if(c[i]==t&&l!=i){
return false;
}
}
return true;
}
}
全部回答
大概有2中思想
1:声明1个长度为5的数组第一次取出一个随即数放到数组中然后下标+1在取一个数和数组中的数做比较如果不同就放进去直到取到5个数
2:有个长度为10的数组里面放着0-10,每次生成一个0-9的随即数作为数组的下标然后把值取出来做个循环循环依次和循环中 数组[i]的值交换位置然后在取出数组的前5个数就行

不知道大家还有更好的方法没有有的话可以联系我
import java.util.Random;

public class TestForRandom {

private Random r = new Random();

public static void main(String args[]){
TestForRandom t = new TestForRandom();
t.value();
}

public void value(){
for(int i = 0;i<5;i++)
System.out.println(generate());
}

public int generate(){
return r.nextInt(177);
}

}
萌新首答
利用set集合属性:
@Test
public void testRandom(){
Random r=new Random();
Set set=new HashSet();
do{
int x=r.nextInt(10);
set.add(x);
}while(set.size()<5);
Iterator it=set.iterator();
while(it.hasNext()){
System.out.print(it.next());
}
}
希望可以对答主有帮助!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
佳豪水晶在哪里啊,我有事要去这个地方
在民事诉讼法里什么时候用判决什么时候用裁定
请问,你为什么玩WOW?,有和一起的、有自己想
家有儿子,独子,厕所在东边怎么办,如何化解
我的阴囊上面长了几个红色的小包跟蚊子咬的一
jsp超链接本地html文件失败,求解
怎么下载有声小说,相声。通用的mp3 格式。让
电脑管家怎么安装不了
西宁地址有知道的么?有点事想过去
求高手详解新天堂2矮人种族
交通路线,怎么去大青沟,大青沟在哪里/
索尼z5p什么时候出啊,等疯了
鼻中隔软骨垫鼻尖 鼻尖向右歪斜怎么办 谢谢
求老滚5人物升级代码
为什么西安到石家庄高铁无座,但到终点北京还
推荐资讯
五菱宏光s高配出厂时底盘封塑了吗
单选题我国新疆塔里木盆地边缘的绿洲属于A.从
红河州弥勒市弥阳镇网线电信多少钱一个月?
会计里大写的问题
追去掉走之,下面加一个十字,上下结构是什么字
农村妇女在家适合做些啥??
口袋妖怪白2古代秘道怎么走[图片]
什么叫样板房
法语读音 sept读 [s εt ]而不读[sεp] 大神
去寒的红糖水什么时间喝最合适
诺优能跟爱他美哪个更好一些?哪个更高端一些
蝈蝈为什么吃同伴的腿
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?