package cn; import java.util.ArrayList; import java.util.Random; /** * 获取10个1-20之间的随机数,要求不能重复 * * 用数组实现,但是数组的长度是固定的,长度不好确定。 * 所以我们使用集合实现。 * * 分析: * 1.创建产生随机数的对象 * 2.创建一个存储随机数的集合 * 3.定义统计变量,从0开始,是否小于10 * 是 : 先产生一个随机数,判断该随机数在集合中是否存在。 * 如果不存在,就添加,统计变量++。存在,就不搭理。 * 否:退出循环 * 4.遍历集合 */ public class RandomDemo { public static void main(String[] args) { //1.创建产生随机数的对象 Random r = new Random(); //创建一个存储随机数的集合 ArrayList<Integer> list = new ArrayList<Integer>(); //定义统计变量,从0开始 int count = 0; //统计变量是否小于10 while(count < 10){ int number = r.nextInt(20) + 1; if(!list.contains(number)){ list.add(number); count ++; } } //遍历集合 for(int i :list){ System.out.println(i); } } }
时间: 2024-12-20 04:11:37