如何在Android中生成特定范围内的随机数?

时间:2011-05-17 10:27:55

标签: java android

  

可能重复:
  Java: generating random number in a range

我想在特定范围内生成随机数。 (例如,范围在65到80之间)

我尝试按照下面的代码,但它不是很充分使用。它还返回大于max的值。价值(大于80)。

Random r = new Random();
int i1 = (r.nextInt(80) + 65);

如何在范围之间生成随机数?

2 个答案:

答案 0 :(得分:477)

Random r = new Random();
int i1 = r.nextInt(80 - 65) + 65;

这给出了一个65(包括)和80(不包括)之间的随机整数,65,66,...,78,79之一。

答案 1 :(得分:292)

int min = 65;
int max = 80;

Random r = new Random();
int i1 = r.nextInt(max - min + 1) + min;

请注意,nextInt(int max)会在0(包含)和最大独占之间返回int。因此+1