Random類
Random類的實例用於生成偽隨機數流,此類使用48位的種子,使用線性同餘公式對其進行修改。如果用相同的種子創建兩個Random實例,則對每個實例進行相同的方法調用序列,它們將生成並返回相同的數字序列。為了保證此屬性的實現,為類Random指定了特定的演算法。為了 Java 代碼的完全可移植性,Java 實現必須讓類
Random
使用此處所示的所有演算法。但是允許 Random
類的子類使用其他演算法,只要其符合所有方法的常規協定即可。
註:Random類實現的演算法使用一個protected實用工具方法,每次調用它最多可提供32個偽隨機生成的位。
Random類構造方法
//直接創建一個Random類對象 Random() //使用seed作為隨機種子創建一個Random類對象 Random(long seed)
Random類常用方法
//從隨機數生成器返回下一個整型值 int nextInt() //從隨機數生成器返回下一個長整型值 long nextLong() //從隨機數生成器返回0.0到1.0之間的下一個浮點值 float nextFloat() //從隨機數生成器返回0.0到1.0之間的下一個雙精度值 double nextDouble() //從隨機數生成器返回下一個高斯分步的雙精度值。中間值為0.0,而標準差為1.0 double nextGaussian()
測試類:
public class RandomTest { public static void main(String[] args) { //創建一個Random類的對象 Random random = new Random(); //隨機生成20個100以內的隨機數,並列印 for (int i=0; i<20; i++){ int num = random.nextInt(100); System.out.println("第" + (i+1) + "個隨機數為:" + num); } } }