更新時間:2021-04-30 11:31:20 來源:動力節點 瀏覽961次
java中一般是通過Random類來獲取隨機數,構造函數一般有兩種形式
- Random(long seed);
- Random();
第一種是利用seed作為隨機發生器的種子
而第二種省略了seed,則則利用系統時間作為隨機發生器的種子
Random random = new Random();創建完隨機對象之后通過以下方法可以獲得不同類型的隨機數method:nextInt()、nextLong()、nextFloat()、nextDouble();
以下是一個Demo
import java.util.Random;
public class CeShi{
public static void main(String []args) {
Random random = new Random();//隨機數種子為系統時間
Random random1 = new Random(10);//隨機數種子為10
System.out.println(random.nextInt());
System.out.println(random1.nextInt());
}
}
運行兩次結果如下:
第一次
167473050
-1157793070
第二次
1939312458
-1157793070
兩次運行可知使用系統時間作為隨機數種子產生的隨機數有變化但是利用10 作為隨機數種子產生的隨機數不管運行多少次都不變
如果Random對象使用相同的種子(比如都是100),并且以相同的順序調用相同的函數,那它們返回值完全相同。
1.通過java.util包中的Random類的next方法來獲得
import java.util.Random;
public class CeShi{
public static void main(String []args) {
Random random = new Random();
for(int i=0;i<10;i++)
System.out.print(random.nextInt(100)+" ");
}
}
三次運行結果如下:
2.(數據類型)(最小值+Math.random()*(最大值-最小值+1))
1如果要產生100以內的隨機數
(int)(Math.random()*(100-1+1))
產生1到100 以內的隨機數
import java.util.Random;
public class CeShi{
public static void main(String []args) {
Random random = new Random();
for(int i=0;i<10;i++)
System.out.print((int)(Math.random()*100)+" ");
}
}
3.利用%進行取模操作即可
產生的隨機數有正有負,利用abs方法取絕對值
通過%100就能得到100 以內的隨機數
以上就是動力節點小編介紹的"Java獲取隨機數"的內容,希望對大家有幫助,如有疑問,請在線咨詢,有專業老師隨時為您服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習