• Java基础面试操作题: 获取 1-20 之间的随机数,共计 20 个,要求不能重复 获取 1-20 之间的随机数,共计 10 个,要求不能重


    package com.swift;
    
    import java.util.HashSet;
    import java.util.Random;
    import java.util.Set;
    
    public class Suijishu_Test {
    
        public static void main(String[] args) {
            /*
             * 获取 1-20 之间的随机数,共计 20 个,要求不能重
             */
    
            Random ran = new Random();
            Set<Integer> set = new HashSet<Integer>();
            int num;
            for (int i = 0; i < 100; i++) {
                num = ran.nextInt(20) + 1;
                System.out.println(num);
                    set.add(num);
            }
            System.out.println();
            for(Integer i:set) {
                System.out.print(i+"~");
            }
        }
    
    }

     获取1~20间的随机数 共计10个,要求不能重复

    package com.swift;
    
    import java.util.HashSet;
    import java.util.Random;
    import java.util.Set;
    
    public class Suijishu_Test {
    
        public static void main(String[] args) {
            /*
             * 获取 1-20 之间的随机数,共计 10 个,要求不能重
             */
    
            Random ran = new Random();
            Set<Integer> set = new HashSet<Integer>();
            int num;
            for (int i = 0; i < 100; i++) {
                num = ran.nextInt(20) + 1;
                System.out.println(num);
                    set.add(num);
                    if(set.size()>=10) {
                        break;
                    }
            }
            System.out.println();
            for(Integer i:set) {
                System.out.print(i+"~");
            }
        }
    
    }

     使用另一种方法获得随机数,System.currentTimeMIllis()

    package com.swift;
    
    import java.util.HashSet;
    import java.util.Random;
    import java.util.Set;
    
    public class Suijishu_Test {
    
        public static void main(String[] args) {
            /*
             * 获取 1-20 之间的随机数,共计 10 个,要求不能重
             */
    
            Set<Integer> set = new HashSet<Integer>();
            int num;
            for (int i = 0; i < 100; i++) {
                num =(int) (System.currentTimeMillis() % 20+1);
                try {
                    Thread.sleep(300);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                System.out.println(num);
                set.add(num);
                if (set.size() >= 10) {
                    break;
                }
            }
            System.out.println();
            for (Integer i : set) {
                System.out.print(i + "~");
            }
        }
    
    }

    使用Math类的random方法

    package com.swift;
    
    import java.util.HashSet;
    import java.util.Random;
    import java.util.Set;
    
    public class Suijishu_Test {
    
        public static void main(String[] args) {
            /*
             * 获取 1-20 之间的随机数,共计 10 个,要求不能重
             */
    
            Set<Integer> set = new HashSet<Integer>();
            int num;
            for (int i = 0; i < 100; i++) {
                num =(int) (Math.random()*20+1);
                System.out.println(num);
                set.add(num);
                if (set.size() >= 10) {
                    break;
                }
            }
            System.out.println();
            for (Integer i : set) {
                System.out.print(i + "~");
            }
        }
    
    }
  • 相关阅读:
    【教程】模拟登陆百度之Java代码版
    Redis错误配置详解
    Redis内存存储结构分析
    Notepad++安装插件
    hadoop2.x 常用端口及定义方法
    微信订阅号可以开通微信支付吗?
    CDH 的Cloudera Manager免费与收费版的对比表
    Hadoop调度框架
    再谈spark部署搭建和企业级项目接轨的入门经验(博主推荐)
    Hive环境的安装部署(完美安装)(集群内或集群外都适用)(含卸载自带mysql安装指定版本)
  • 原文地址:https://www.cnblogs.com/qingyundian/p/8323948.html
Copyright © 2020-2023  润新知