作者:海带木耳求_529 | 来源:互联网 | 2022-12-09 01:57
1> Mureinik..:
你无条件地回来了.相反,您应该循环直到数字符合条件,然后才返回它:
public static String generateRandomOddNumbersWithinRange(){
int randomNum = 0;
do {
randomNum = ThreadLocalRandom.current().nextInt(1, 43 + 1);
} while (randomNum % 2 == 0);
return Integer.toString(randomNum);
}
或者,更强大的解决方案可以是将0到21之间的数字随机化,然后加倍并添加一个:
public static String generateRandomOddNumbersWithinRange(){
return Integer.toString(ThreadLocalRandom.current().nextInt(0, 21 + 1) * 2 + 1);
}