如何在java中输出5个不重复的随机数呢?
我的想法是创建一个数组来存放这些随机数,使用第一个循环来按序存放随机数,一次存放一个;使用第二个循环把这次存放的随机数和之前存放的每一个数字作比较,存在相同则退回本次循环的开始位置,重新赋值比较,直到循环结束,得到五个不重复的随机数。
package number;
import java.util.Random;
/*
生成随机数
int nextInt(int n);返回一个伪随机数,它是取自此随机数生成序列的,在0(包括)和指定值(不包括)之间均匀分布的int值
*/
public class RandomText03 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Random r = new Random();
//int i = r.nextInt(101);//[0,100]
//System.out.println(i);
//循环生成五个随机数
// for(int i=0;i<5;i++) {
// System.out.println(r.nextInt(5));
// }
//作业:五个不重复的随机数
int[] arr= new int[5];
for(int i=0;i<5;i++) {
arr[i]=r.nextInt(10);
for(int j=0;j<i;j++) {
while(arr[i]==arr[j]) {
i--; //相同则重新生成本次随机数
}
}
}
for(int i:arr)
System.out.print(i+" ");
}
}