码迷,mamicode.com
首页 > 编程语言 > 详细

Java基础知识强化之集合框架笔记35:List练习之产生10个1~20之间的随机数(要求:随机数不能重复)

时间:2015-10-05 18:04:10      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:

1. 需求:获取10个1-20之间的随机数,要求不能重复

用数组实现,但是数组的长度是固定的,长度不好确定。
所以我们使用集合实现。

分析:
   创建产生随机数的对象
   创建一个存储随机数的集合。
   定义一个统计变量。从0开始。
   判断统计遍历是否小于10
      是:先产生一个随机数,判断该随机数在集合中是否存在。
          如果不存在:就添加,统计变量++。
          如果存在:就不搭理它。
        否:不搭理它
       遍历集合

 

2. 代码实现:

 1 package cn.itcast_02;
 2 
 3 import java.util.ArrayList;
 4 import java.util.Random;
 5 
 6 /*
 7  * 获取10个1-20之间的随机数,要求不能重复
 8  * 
 9  * 用数组实现,但是数组的长度是固定的,长度不好确定。
10  * 所以我们使用集合实现。
11  * 
12  * 分析:
13  *         A:创建产生随机数的对象
14  *         B:创建一个存储随机数的集合。
15  *         C:定义一个统计变量。从0开始。
16  *         D:判断统计遍历是否小于10
17  *             是:先产生一个随机数,判断该随机数在集合中是否存在。
18  *                     如果不存在:就添加,统计变量++。
19  *                     如果存在:就不搭理它。
20  *             否:不搭理它
21  *         E:遍历集合
22  */
23 public class RandomDemo {
24     public static void main(String[] args) {
25         // 创建产生随机数的对象
26         Random r = new Random();
27 
28         // 创建一个存储随机数的集合。
29         ArrayList<Integer> array = new ArrayList<Integer>();
30 
31         // 定义一个统计变量。从0开始。
32         int count = 0;
33 
34         // 判断统计遍历是否小于10
35         while (count < 10) {
36             //先产生一个随机数
37             int number = r.nextInt(20) + 1;
38             
39             //判断该随机数在集合中是否存在。
40             if(!array.contains(number)){
41                 //如果不存在:就添加,统计变量++。
42                 array.add(number);
43                 count++;
44             }
45         }
46         
47         //遍历集合
48         for(Integer i : array){
49             System.out.println(i);
50         }
51     }
52 }

运行效果如下:

技术分享

Java基础知识强化之集合框架笔记35:List练习之产生10个1~20之间的随机数(要求:随机数不能重复)

标签:

原文地址:http://www.cnblogs.com/hebao0514/p/4855918.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!