java - 生成一个范围内的随机偶数?

标签 java random range

这是我遵循的格式:

 int randomNum = rand.nextInt((max - min) + 1) + min;

这是我的代码。我正在尝试获取 1 到 100 之间的随机偶数:

 Random rand = new Random(); 
 int randomNum = rand.nextInt((100 - 2) + 1) + 2;

我看到一种解决方案是将数字乘以 2,但这超出了预期的范围。

我想过做一堆 if 语句来解决这个问题,但它似乎过于复杂。有没有比较简单的解决方案?

最佳答案

只需生成一个从 0 到 49 的数字,然后将其乘以 2。

Random rand = new Random(); 
int randomNum = rand.nextInt(100/2) *2;

要在一个范围内完成,只需将范围添加到:

int randomNum = startOfRange+rand.nextInt((endOfRange-startOfRange)/2) *2;

注意startOfRange应该是偶数或者转换成偶数。

关于java - 生成一个范围内的随机偶数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33870759/

相关文章:

javascript - 从 1's and 0' 的字符串中选择随机数并改变颜色

vue.js - Vuejs基于ranger值动态设置步数

c# - 如何按范围而不是 C# 中的标题名称引用数据表的列

Java ScriptEngine 添加 'long' 失败?

java - Java中数组空间被重用?

Python - 空白范围默认为预设范围

Python - 按字母顺序排列单词

java - 我可以在 onPostexecute 中使用 setImageResource 吗?

java - Java 窗口失去焦点时控制鼠标

c - srand() — 为什么只调用一次?