zoukankan      html  css  js  c++  java
  • Java学习(二十二):随机数的产生方法

    Java随机数的产生方式
      在Java中,随机数的概念从广义上将,有三种。
      1、通过System.currentTimeMillis()来获取一个当前时间毫秒数的long型数字。
      2、通过Math.random()返回一个0到1之间的double值。
      3、通过Random类来产生一个随机数,这个是专业的Random工具类,功能强大。

    java.util.Random类来产生一个随机数发生器。它有两种形式的构造函数,分别是Random()和Random(long seed)。
    Random()此构造方法将随机数生成器的种子设置为某个值,该值与此构造方法的所有其他调用所用的值完全不同(网上有文章说是采用System.currentTimeMillis()作为种子,实测不确定,或许不是简单的用当前时间)。
    Random(long seed)使用指定的seed作为发生器的种子。相同的种子产生相同的随机数。
    随机数发生器(Random)对象产生以后,通过调用不同的method:nextInt()、nextLong()、nextFloat()、nextDouble()等获得不同类型随机数。

    1 public static void main(String[] args)
    2     {
    3         for (int i = 0; i < 10; i++)
    4         {
    5             Random rand = new Random();
    6             System.out.println("随机数" + i + ": " + rand.nextInt());
    7             System.out.println("Time: " + System.currentTimeMillis());
    8         }
    9     }

    打印结果可以看出,在相同的时间生成的随机数并不相同:

    随机数0: 428923238
    Time: 1446719287485
    随机数1: -1644891094
    Time: 1446719287485
    随机数2: -2063294173
    Time: 1446719287485
    随机数3: -220798588
    Time: 1446719287485
    随机数4: -1036960660
    Time: 1446719287485
    随机数5: -2027516416
    Time: 1446719287485
    随机数6: 705879658
    Time: 1446719287485
    随机数7: 388111823
    Time: 1446719287485
    随机数8: 1685942599
    Time: 1446719287485
    随机数9: -1417505914
    Time: 1446719287485

  • 相关阅读:
    [每日一题2020.06.23]leetcode #16 双指针
    typora+picgo+jsdeliver+github打造免费高效的博客图床
    [javaSE笔记5]String
    [javaSE笔记4] ArrayList
    [javaSE笔记3] JAVA的继承---多态 抽象
    [每日一题2020.06.22]leetcode #11 双指针
    操作系统---设备管理
    [每日一题2020.06.21]leetcode #124 DFS二叉树
    操作系统---磁盘
    PC实用工具推荐
  • 原文地址:https://www.cnblogs.com/moleme/p/4940465.html
Copyright © 2011-2022 走看看