1. 程式人生 > >java生成指定範圍內不重複的隨機數(包含邊界值)

java生成指定範圍內不重複的隨機數(包含邊界值)

生成指定範圍內的隨機數
rand.nextInt(100);
這行程式碼將生成範圍 0~100 之間的隨機數,有趣的是,取值可能為 0,但不可能為 100。
因為隨機生成值區間是 [0, 100)範圍內的整數,實際上就是區間 [0, 99]。因為最大邊界為100,可惜不能等於100,因此最大可能產生的“整數”就是99。

只是區間 [0, 100] 正好從 0 開始,所以能取到0。

所以想要生成包含邊界值的隨機數,需要各+1。
rand.nextInt(100) + 1;

所以獲取範圍內包含邊界值的公式:
int randNumber = rand.nextInt(MAX - MIN + 1) + MIN;