在范围内生成随机偶数?

mat*_*hew 5 java random range

这是我遵循的格式:

 int randomNum = rand.nextInt((max - min) + 1) + min;
Run Code Online (Sandbox Code Playgroud)

所以这是我的代码.我试图获得1到100之间的随机偶数:

 Random rand = new Random(); 
 int randomNum = rand.nextInt((100 - 2) + 1) + 2;
Run Code Online (Sandbox Code Playgroud)

我看到一个解决方案是将数字乘以2,但这违反了预期的范围.

我想做一堆if语句来解决这个问题,但它看起来过于复杂.有一个相对简单的解决方案吗?

Tim*_*m B 9

只需生成0到49之间的数字,然后将其乘以2即可.

Random rand = new Random(); 
int randomNum = rand.nextInt(100/2) *2;
Run Code Online (Sandbox Code Playgroud)

要在范围内执行此操作,只需添加以下范围:

int randomNum = startOfRange+rand.nextInt((endOfRange-startOfRange)/2) *2;
Run Code Online (Sandbox Code Playgroud)

请注意,startOfRange应为偶数或转换为偶数.