前言
生成随机数,且随机数不能重复,只使用数组,不能使用集合,本次只体现一种方法
提示:以下是本篇文章正文内容,下面案例可供参考
一.成型代码
代码如下(示例):
public class HomeWork02 {
public static void main(String[] args) {
//生成不重复的三个随机数存储位置
int[] randnu = new int[] {-1,-1,-1};//-1的目的是不在随机数范围内,在后面的比较是否相同,铺垫。
//
//i为randnu的下标 即将不重复的随机数放到randnu[i]
for(int i = 0 ; i<randnu.length; i++) {
q= s.nextInt(3);//生成0~2的随机数,根据自己需求更改
//x代表判断重复次数
int x =0;
for(int j = 0 ;j<randnu.length ;j++) {
if(randnu[j] == q ) {
x++;
}
}
if(x==0) {
randnu[i]=q;
System.out.println("w"+randnu[i]);//打印
}else {
i--;
}
}
/*
//对取出来的下标排列
for(int i= 0 ;i<randnu.length ;i++) {
for(int j = 0 ;j<randnu.length-1-i ;j++)
if(randnu[j] >randnu[j+1]) {
randnu[j] = randnu[j]^randnu[j+1];
randnu[j+1] = randnu[j]^randnu[j+1];
randnu[j] = randnu[j]^randnu[j+1];
}
}
for(int i = 0 ; i<randnu.length; i++) {
System.out.println(randnu[i]);
}
*/
}
}
注释部分是对随机数的排列,和输出。
二:总结
提示:虽然符合随机数生成不重复,但是生成概率不符合排列,之后使用方法(二)数组的顶替可以达到排列概率。