黑马程序员技术交流社区

标题: 编写一个程序,获取10个1至20的随机数,随机数不重复 [打印本页]

作者: MoonsenHung    时间: 2015-8-25 23:31
标题: 编写一个程序,获取10个1至20的随机数,随机数不重复
  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的随机数,要求随机数不能重复。


作者: 13706649811    时间: 2015-8-25 23:41
还没学到 赞一个
作者: pengbeilin    时间: 2015-8-25 23:41
为什么是Map?而不是set?





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2