zoukankan      html  css  js  c++  java
  • java se 随机数。生成

    public class test {
    
        public static void main(String[] args) {
            
            getRandomNum1();
            getRandomNum2();
            getRandomNum3();
            getRandomNum4();
            getRandomNum5();
        }
    
        /**
         * 对数组里面的数字进行循环判断,如果有不做处理,继续循环。没有就添加。
         */
        private static void getRandomNum1() {
            int [] arr = new int[5];  
            int count = 0;  
            while(count < 5) {  
                int num = (int) (Math.random() * (10)) ;  
                boolean flag = true;  
                for (int j = 0; j < 5; j++) {  
                    if(num == arr[j]){  
                        flag = false;  
                        break;  
                    }  
                }  
                if(flag){  
                    arr[count] = num;  
                    count++;  
                }  
            }  
           System.out.println("随机数1:"+Arrays.toString(arr));
        }
        /**
         * 判断是否存在。不在就添加,在就不处理。继续循环
         */
        private static void getRandomNum2() {
            List list = new ArrayList();
            while(list.size() < 5) {  
                int num = (int) (Math.random() * (10)) ;  
                if(!list.contains(num)) {
                    list.add(num);
                }
            }  
           System.out.println("随机数2:"+Arrays.toString(list.toArray()));
        }
        /**
         * 利用set特性.自动去重
         */
        private static void getRandomNum3() {
            Set set = new TreeSet<>();
            while(set.size() < 5) {  
                int num = (int) (Math.random() * (10)) ;  
                set.add(num);
            }  
           System.out.println("随机数3:"+Arrays.toString(set.toArray()));
        }
        
        /**
         * 利用map特性做空判断
         */
        private static void getRandomNum4() {
            Map map = new HashMap<>();
            while(map.size() < 5) {  
                int num = (int) (Math.random() * (10)) ;  
                if(map.get(num) == null ) {
                    map.put(num,num);
                }
            }  
           System.out.println("随机数4:"+map.values());
        }
        /**
         * 批量生成随机数,取随机的5个
         */
        private static void getRandomNum5() {
            int[] arrs = new int[20];   
            for (int i = 0; i < arrs.length; i++) {  
                arrs[i] = i ;
            }  
            int[] arr = new int[5];  
            boolean[] flag = new boolean[arrs.length];  
            Random random=new Random();  
            int j = 0;
            for (int i = 0; i < arr.length; i++) {  
                do {  
                    j = random.nextInt(flag.length);  
                } while (flag[j]);  //标记,如果取出来过就继续do while 只有不符合while才会继续
                flag[j] = true; 
                arr[i]=arrs[j];  
            } 
            System.out.println("随机数5:"+Arrays.toString(arr));
        }
    }
  • 相关阅读:
    sql 存储过程
    Chrome系列 Failed to load resource: net::ERR_CACHE_MISS
    oledb 操作 excel
    [转]基于SQL脚本将数据库表及字段提取为C#中的类
    Ul li 竖排 菜单
    JS判断checkbox至少选择一项
    JS 字符串转日期格式 日期格式化字符串
    setInterval 实时驱动界面改变
    Let's Format Css Documents
    Web颜色搭配
  • 原文地址:https://www.cnblogs.com/1-Admin/p/9199400.html
Copyright © 2011-2022 走看看