我期望在1500和1650之間(含)的值之間生成隨機整數。Java在1500和1650之間生成隨機值包含
我已成功生成25和55之間的隨機值(代碼如下)。然而,我遇到的問題是,如果我調整代碼以生成介於1500和1650之間的值,則結果最終會向我提供值1500
,因爲生成的大部分數字都低於此值,因此我的if
語句設置任何低於1500至1500
Random rand = new Random();
double angle = rand.nextInt(55);
if(angle < 25){
angle = 25;
}
double muzzlevelocity = rand.nextInt(1500) + 150;
if(muzzlevelocity < 1500){
muzzlevelocity = 1500;
}
if(muzzlevelocity > 1650){
muzzlevelocity = 1650;
}
我偶爾會(雖然很少)實現它位於1500和1650(含)之間的結果。是否有另一種(更簡單/更直接)的方式可以實現我想要的結果?
實施例的輸出如下:
輸出1 3:
Random Angle: 25.0
Random Muzzle Velocity: 1500.0
輸出2 3:
Random Angle: 30.0
Random Muzzle Velocity: 1573.0
輸出3 3:
Random Angle: 43.0
Random Muzzle Velocity: 1500.0
謝謝。
即使您自己解決了問題,您應該接受其他答案,因爲它們可以解決您的問題 – TheLQ 2011-03-23 01:18:59