java隨機數


簡述

  在java中想得到隨機數一般有三種方法:使用Random類、使用Math類的random方法、使用currentTimeMillis方法

隨機數區間映射的技巧

  例如最終你想得到一個區間是 [max,min) 的隨機數

  如果你現在只有[0,1)的隨機數,我們設為 ran,那么目標隨機數即為 ran * (max - min) + min

  如果你可以控制生成[0,n)的隨機數,那么只需令 n = (max - min + 1),目標隨機數即為 ran + min

  如果你得到的是一個純隨機的隨機數,那么目標隨機數為 ran % ( max - min ) + min 

Random類

構造方法

  Random() 創建一個新的隨機數生成器

  Random(long seed) 使用指定的種子

得到隨機數

  nextBoolean() 返回隨機的boolean值隨機數

  nextDouble() 返回在0.0和1.0之間均勻分布的double值隨機數

  nextInt(int n):返回在0和1之間均勻分布的int值隨機數

  nextGaussian() 返回呈高斯(“正態”)分布的double值,其平均值是0.0標准差是1.0

Math類

  Math.random() 方法返回 [0,1) 之間的浮點數,然后我們進行運算就可以得到任意區間的隨機數

currentTimeMillis

  System.currentTimeMillis() 方法返回從1970年1月1日0時0分0秒(這與UNIX系統有關)到現在的一個long型的毫秒數,取模之后即可得到所需范圍內的隨機數

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM