当前位置:首页 » 编程语言 » java随机数重复

java随机数重复

发布时间: 2022-11-13 13:26:29

‘壹’ java随机生成10个0-100的数,重复生成10次,统计重复出现的数字和重复的次数

importjava.util.HashMap;
importjava.util.Map;
importjava.util.Random;
importjava.util.Set;

publicclassGenerateNumber{
publicstaticvoidmain(String[]args){
Map<Integer,Integer>container=newHashMap<>();
RandomnumberGenerator=newRandom();
intcount=0;
do{
intnumber=numberGenerator.nextInt(100);
if(container.get(number)!=null){
container.put(number,container.get(number)+1);
}else{
container.put(number,1);
}
count++;
}while(count<10);

Set<Map.Entry<Integer,Integer>>set=container.entrySet();
System.out.println("数字 出现次数");
for(Map.Entry<Integer,Integer>entry:set){
System.out.println(entry.getKey()+" "+entry.getValue());
}
}
}

‘贰’ java中,我写了找随机数不重复的代码,但是找出的随机数有重复的,求大神知道

public class radom {

public static void main(String[] args) throws Exception{
final int L=10;
int[] a=new int[L];

for(int i=0;i<a.length;i++){

a[i]=(int)(Math.random()*(L));

for (int j = 0; j <i; j++) {

while(a[i]==a[j])
{
a[i]=(int)(Math.random()*(L));
j=0;//必须让j重新为0,因为a[i]已经重新取了随机数,有可能与0到j之 间的数重复,必须重新遍历以确保数字的唯一性。
}
}
System.out.println(a[i]);

}

}}

‘叁’ Java如何让随机数不重复

1.JAVA中生成随机数的方式 1、在j2se中使用Math.random()令系统随机选取一个0~1之间的double类型小数,将其乘以一个数,比如25,就能得到一个0~25范围内的随机数,这个在j2me中没有...
2.随机给定范围内N个不重复的数 1、方法一:最简单最易理解的两重循环去重 /** * 随机指定范围内N个不重复的数 * 最简单最基本的方法 * @param min 指定范围最小值 * @param max ...

‘肆’ 我想用java的循环嵌套生成不重复的随机数 但是一直有重复的 清高手指点!

你的思路貌似有点问题

我给你改了你下
你看看哈

public class RandonNum {

public static void main(String[] arg) {
int a[] = new int[23];
boolean y = true;
for (int i = 0; i < a.length; i++) {
do {
y = true;
int random = (int) (Math.random() * 23) + 1;
for (int j = 0; j < i; j++) {
if (a[j] == random) {//应该判断生成的这个随机数与前面的数有没有重复
y = false;//有重复就让y=false 并跳出循环
break;
}
}
if (y) {//如果y为true就表示生成的随机数与以前的数没有重复的
a[i] = random;//没有重复再给a[i]赋值 这里很重要
System.out.println(a[i]);
}
} while(!y);//如果有重复了 在继续随机直到没有重复的为止
}

}
}

‘伍’ java怎样产生不同随机数

JAVA中取随机数有三种方法:
一、Math.random()方法,产生一个大于等于0小于1的一个double,我们可以把他乘以一定的数,比如说乘以100,他就是个100以内的随机。
二、在java.util.Random的类,我们可以新建一个Random的对象来产生随机数,他可以产生int、float、double,long。
三、在System类中有一个currentTimeMillis()方法,这个方法返回一个从1970年1月1号0点0分0秒到目前的一个毫秒数,返回类型是long,我们可以拿他作为一个随机数,我们可以拿他对一些数取模,就可以把他限制在一个范围之内

‘陆’ 请问Java编程中随机数重复一直同一个值,请问有何方法可以解决列入这个程序如果我一直出剪刀就一直平

问题出在 int a=(int)(Math.random())*3+1; Math.random() 的范围是[0,1),转换成int 为0 ,这样a的值始终为1,应该改为int a=(int)(Math.random()*3+1);

‘柒’ 在java中产生随机数

一、利用random方法来生成随机数。

在Java语言中生成随机数相对来说比较简单,因为有一个现成的方法可以使用。在Math类中,Java语言提供了一个叫做random的方法。通过这个方法可以让系统产生随机数。不过默认情况下,其产生的随机数范围比较小,为大于等于0到小于1的double型随机数。虽然其随机数产生的范围比较小,不能够满足日常的需求。如日常工作中可能需要产生整数的随机数。其实,只要对这个方法进行一些灵活的处理,就可以获取任意范围的随机数。

如我们可以先通过random方法生成一个随机数,然后将结果乘以10。此时产生的随机数字即为大于等于0小于10的数字。然后再利用Int方法进行转换(它会去掉小数掉后面的数字,即只获取整数部分,不是四舍五入)。最后即可获取一个0到9的整数型随机数字。其实现方法很简单,就是对原有的random方法按照如下的格式进行变型:(int)(Math.Random()*10)即可。其实我们还可以对这个方法进行扩展,让其产生任意范围内的随机数。至需要将这个10换成n即可,如改为(int)(Math.Random()*n)。此时应用程序就会产生一个大于等于0小与n之间的随机数。如将n设置为5,那么其就会产生一个0到5之间的整数型的随机数。如果将这个写成一个带参数的方法,那么只要用户输入需要生成随机数的最大值,就可以让这个方法来生成制定范围的随机数。在Java中定义自己的工具库

有时候程序员可能需要生成一个指定范围内的随机偶数或者奇数。此时是否可以通过这个方法来实现呢?答案是肯定的。如现在程序要需要生成一个1-100范围内的偶数。此时该如何实现?首先,需要生成一个0到99之内的随机数(至于这里为什么是99,大家耐心看下去就知道原因了)。要实现这个需求,很简单吧,只要通过如下语句就可以实现: i=1+(int)(Math.Random()*100)。其中(int)(Math.Random()*99)产生0到99的整数型随机数。然后再加上1就是产生1到100之间的随机整数。然后将产生的随机数赋值给变量i。但是此时其产生的随机数即有偶数,又有奇数。而现在程序员需要的是一个随机的偶数。那么我们可以在后面加上一个if判断语句。将这个随机数除以2,如果没有余数的话(或者余数为0)则表明这个随机数是偶数,直接返回即可。如果其返回的余数不为零,那么就表明其是奇数,我们只要加上1就变为了偶数,返回即可。注意,在上面的随机数生成中,笔者采用的范围是0到99,然后再加上1让其变为1到100的随机数。最后的结果就是生成1到100之间的随机偶数。其实,如果要范围随机奇数的话,至需要对上面的语句进行稍微的修改即可。Java:改变你我的世界

‘捌’ java怎么产生不会重复的随机数

//产生20个不重复随机数
publicstaticvoidmain(String[]args){
booleantag=true;
List<Integer>list=newArrayList<>();
for(inti=0;i<20;i++){
intv=(int)(Math.random()*100+1);
for(Integerinteger:list){
if(integer==v){
tag=false;
}
}
if(tag){
list.add(v);
}
}

for(Integerinteger:list){
System.out.println(integer);
}
}

‘玖’ java多线程中随机数重复

java中要使生成的随机数不重复可以将已经生成的随机数放入到数组中

热点内容
视频点播服务器搭建局域网 发布:2025-01-12 15:46:44 浏览:87
unit长安豪华版有哪些配置 发布:2025-01-12 15:45:05 浏览:84
数据库表的分区 发布:2025-01-12 15:39:29 浏览:368
u点家庭服务器网关设置有什么用 发布:2025-01-12 15:33:15 浏览:152
王者归来java 发布:2025-01-12 15:27:13 浏览:67
安卓手机为什么卡又发热 发布:2025-01-12 15:23:18 浏览:570
如何验证root密码是否正确 发布:2025-01-12 15:23:15 浏览:591
socketftp服务器端 发布:2025-01-12 15:19:55 浏览:235
胸椎腰椎压缩性骨折 发布:2025-01-12 15:18:30 浏览:475
运营商清缓存 发布:2025-01-12 15:17:36 浏览:488