分享

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

 樱花梦_张艺馨 2017-01-07

package cn.itcast_02;

import java.util.ArrayList;
import java.util.Random;

/*
 * 获取10个1-20之间的随机数,要求不能重复
 *
 * 用数组实现,但是数组的长度是固定的,长度不好确定。
 * 所以我们使用集合实现。
 *
 * 分析:
 *   A:创建产生随机数的对象
 *   B:创建一个存储随机数的集合。
 *   C:定义一个统计变量。从0开始。
 *   D:判断统计遍历是否小于10
 *    是:先产生一个随机数,判断该随机数在集合中是否存在。
 *      如果不存在:就添加,统计变量++。
 *      如果存在:就不搭理它。
 *    否:不搭理它
 *   E:遍历集合
 */
public class RandomDemo {
 public static void main(String[] args) {
  // 创建产生随机数的对象
  Random r = new Random();

  // 创建一个存储随机数的集合。
  ArrayList<Integer> array = new ArrayList<Integer>();

  // 定义一个统计变量。从0开始。
  int count = 0;

  // 判断统计遍历是否小于10
  while (count < 10) {
   //先产生一个随机数
   int number = r.nextInt(20) + 1;
   
   //判断该随机数在集合中是否存在。
   if(!array.contains(number)){
    //如果不存在:就添加,统计变量++。
    array.add(number);
    count++;
   }
  }
  
  //遍历集合
  for(Integer i : array){
   System.out.println(i);
  }
 }
}

结果:
3
4
7
17
5
9
15
19
18
16

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多