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));
        }
    }
  • 相关阅读:
    什么是ORM
    ORM优缺点
    Azure 中快速搭建 FTPS 服务
    连接到 Azure 上的 SQL Server 虚拟机(经典部署)
    在 Azure 虚拟机中配置 Always On 可用性组(经典)
    SQL Server 2014 虚拟机的自动备份 (Resource Manager)
    Azure 虚拟机上的 SQL Server 常见问题
    排查在 Azure 中新建 Windows 虚拟机时遇到的经典部署问题
    上传通用化 VHD 并使用它在 Azure 中创建新 VM
    排查在 Azure 中新建 Windows VM 时遇到的部署问题
  • 原文地址:https://www.cnblogs.com/1-Admin/p/9199400.html
Copyright © 2011-2022 走看看