在Java中我們可以使用java.util.Random類來產生一個隨機數發生器。它有兩種形式的構造函數,分別是Random()和Random(long seed)。Random()使用當前時間即System.currentTimeMillis()作為發生器的種子,Random(long seed)使用指定的seed作為發生器的種子。
隨機數發生器即Random對象產生以后,可以通過對象調用不同的函數:nextInt()、nextLong()、nextFloat()、nextDouble()等來獲得不同類型的隨機數。
如果2個Random對象使用相同的種子(比如都是100),并且以相同的順序調用相同的函數,那么它們的返回值完全相同。如下面代碼中兩個Random對象的輸出完全相同:
如果希望將返回的隨機數控制在某個范圍內(比如0~99),則可以使用模數運算符%。說明:將模數運算符%作用于隨機數產生器所產生的隨機數身上,目的是為了讓隨機數的最大值局限于我們所制定的操作數數值減1范圍內。如下面代碼就將輸入控制在0~99的范圍內,注意:如果不加Math.abs(),輸出范圍將是-99~99。