为Random.nextInt()指定max和min?

可能重复:
Java:在一个范围内生成随机数

我想在逻辑范围内生成一个随机int。 所以,比如说,我正在编写一个程序来“滚动”具有指定数量边的骰子。

  public int rollDice(){
     随机生成器= new Random();
      return generator.nextInt(sides);
 } 

现在问题变成了这将返回边和零之间的值, 包括在内 ,这没有任何意义,因为大多数骰子从1到6,9等等。那么如何指定nextInt应该在1和边数之间工作?

要在fromto (包含)之间生成随机int值(均匀分布),请使用:

from + rndGenerator.nextInt(to - from + 1) 

在你的情况下(1..sides):

 1 + rndGenerator.nextInt(sides)