java 随机数

  • Post author:
  • Post category:java


本文仅供参考:


        //第1种
        //通过System.currentTimeMillis()来获取随机数。实际上是获取当前时间毫秒数,它是long类型
        final long l = System.currentTimeMillis();
        System.out.println("1.1-测试随机数-通过System.currentTimeMillis():" +l);
        //获取int类型的整数,转成int类型,获取[0, 100)之间的int整数
        final int i = (int)( l % 100 );
        System.out.println("1.2-测试随机数-通过System.currentTimeMillis():" +i);


        //2.第2种
        //通过Math.random()来获取随机数。实际上,它返回的是0(包含)到1(不包含)之间的double值
        final double d = Math.random();
        System.out.println("2.1-测试随机数-Math.random():" +d);

        final int e = (int)(d*100);
        System.out.println("2.2-测试随机数-Math.random():" +e);


        //3.第3种
        //Random类来获取随机数
        Random random = new Random();//默认构造方法
        Random random2 = new Random(1000);//指定种子数字
        System.out.println("3.1-测试随机数-Random类来获取随机数:" +random);
        System.out.println("3.2-测试随机数-Random类来获取随机数:" +random2);
        //通过Random对象获取随机数。Random支持的随机值类型包括:boolean, byte, int, long, float, double
        int i2 = random.nextInt(100);
        System.out.println("3.1.1-测试随机数-Random类来获取[0, 100)之间的int整数随机数:" +i2);
        int i3 = random2.nextInt(100);
        System.out.println("3.2.2-测试随机数-Random类来获取随机数:" +i3);

打印结果:

1.1-测试随机数-通过System.currentTimeMillis():1589866623225
1.2-测试随机数-通过System.currentTimeMillis():25
2.1-测试随机数-Math.random():0.29073826822854665
2.2-测试随机数-Math.random():29
3.1-测试随机数-Random类来获取随机数:java.util.Random@70177ecd
3.2-测试随机数-Random类来获取随机数:java.util.Random@1e80bfe8
3.1.1-测试随机数-Random类来获取[0, 100)之间的int整数随机数:16
3.2.2-测试随机数-Random类来获取随机数:87

随机生成0和1例子:

public class test {

    public static void main(String[] args){

        for (int i=0;i<10;i++){
            int number = (int)(Math.random()*10)>0.7?1:0;
            System.out.println("1========"+number);
        }

    }
}

结果:

1========1
1========0
1========1
1========1
1========0
1========1
1========0
1========1
1========0
1========1

Process finished with exit code 0



版权声明:本文为jack_bob原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。