zoukankan      html  css  js  c++  java
  • 《java入门第一季》之有趣的集合小案例---获取10个【1-20之间】的随机数,要求不能重复。

    import java.util.ArrayList;
    import java.util.Random;
    
    /*
     * 获取10个【1-20之间】的随机数,要求不能重复。(注意:不是获取10个数,如果单纯获取十个数可能有重复的,这里是获取10个不重复的数。
     * 所以统计变量要在判断不重复后增加。)
     * 
     * 用数组实现,但是数组的长度是固定的,长度不好确定。
     * 所以我们使用集合实现。
     * 
     * 分析:
     * 		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 ;//Random类下面的方法:public int nextInt(int n);下一个伪随机数,在此随机数生成器序列中 0(包括)和 n(不包括)之间均匀分布的 int 值。 
    
    			
    			//判断该随机数在集合中是否存在。
    			if(!array.contains(number)){//ArrayList类的方法public boolean contains(Object o)如果此列表包含特定的元素,则返回 true
    				//如果不存在:就添加,统计变量++。
    				array.add(number);
    				count++;
    			}
    			/*这里获取的存在重复值
    			 * array.add(number);
    			count++;
    			*/
    		}
    		
    		//遍历集合
    		for(Integer i : array){
    			System.out.println(i);
    		}
    	}
    }
    

  • 相关阅读:
    HTML5兼容性问题
    网站——如何实现轮播效果
    总结(1)
    MAC_terminal_终端设置
    JS_tips(updating):执行时间;
    Object:window_方法
    Object:Array数组——对象的集合
    Object:Math——对数据的数学计算
    js 统计字符串或者数组的出现次数
    react-native项目实战积累
  • 原文地址:https://www.cnblogs.com/wanghang/p/6299726.html
Copyright © 2011-2022 走看看