- package com.itheima;
- import java.util.HashSet;
- import java.util.Iterator;
- import java.util.Random;
- /**
- * 题目: 编写一个程序,获取10个1至20的随机数,要求随机数不能重复。
- *
- */
- /**
- * 分析题干: 十个 不重复 随机数
- * 基本思路: 利用HashSet的唯一性,往里面装入,再取出 重点: 怎么是控制循环的次数
- *
- * 具体思路:
- * 1.创建Random类实例 ,产生随机数
- * 2.用集合的长度作为循环的条件,如果集合中的元素不够10个,那就继续添加
- * 3.拿到集合的迭代器,遍历输出符合条件的元素
- *
- */
- public class Test8 {
- public static void main(String[] args) {
- // 创建Random类实例
- Random random = new Random();
- // 创建一个HashSet集合
- HashSet<Integer> hs = new HashSet<Integer>();
- //如果集合中的元素少于十个,循环继续,往集合添加元素
- while (hs.size() != 10) {
- int num = random.nextInt(20) + 1;//产生1-20之间的随机数
- hs.add(num);//往集合里添加元素,唯一性
- }
- //获取迭代器
- Iterator<Integer> it = hs.iterator();
- //遍历输出
- while (it.hasNext()) {
- System.out.println(it.next());
- }
- }
- }
复制代码
|
|