A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. package com.itheima;

  2. import java.util.HashMap;
  3. import java.util.Map;
  4. import java.util.Random;

  5. /**
  6. *
  7. * 题目:
  8. *  编写一个程序,获取10个1至20的随机数,要求随机数不能重复。
  9. *
  10. *
  11. *
  12. *
  13. * @author perry
  14. *
  15. */
  16. public class Test7 {
  17.         public static void main(String[] args) {
  18.        
  19.                 //创建Map集合
  20.                 Map<Integer,Integer> map = new HashMap<Integer,Integer>();
  21.                 //封装产生随机数
  22.                 Random ran = new Random();
  23.                 //遍历获取产生的随机数,别且取到下一位
  24.                 int x;
  25.                 for (int i = 0; map.size() < 10; i++) {
  26.                         x = ran.nextInt(19)+1;
  27.                         //对比看是否包含了在其中
  28.                         if (!map.containsValue(x)) {
  29.                                 //没有包含的添加到其中
  30.                                 map.put(i, x);
  31.                                
  32.                                
  33.                         }
  34.                 }
  35.                 //遍历输出所获得的随机数
  36.                 for (int value:map.values()) {
  37.                         System.out.println(value);
  38.                 }
  39.                
  40.         }
  41. }
复制代码

编写一个程序,获取10个1至20的随机数,要求随机数不能重复。

2 个回复

正序浏览
为什么是Map?而不是set?
回复 使用道具 举报
还没学到 赞一个
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马