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

Posted Advancing Swift

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 获取 1-20 之间的随机数,共计 20 个,要求不能重复 获取 1-20 之间的随机数,共计 10 个,要求不能重的主要内容,如果未能解决你的问题,请参考以下文章

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

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

List集合系列文章(九) - ArrayList实现获取10个1-20之间随机数,且不能重复

(java)生成五个1-20之间的随机数进行猜测的小游戏

Java基础练习题10--[使用ArrayList获取10个随机数;String类型的ArrayList集合,去除ArrayList中的重复元素,模拟注册,登录存入集合]

案例:产生1~20之间10个不重复的随机数