📅  最后修改于: 2023-12-03 15:38:34.402000             🧑  作者: Mango
在Java中,我们可以使用 java.util.Random
类来生成随机数。生成的随机数默认范围是 [0, 2^32)
。如果需要生成负随机数,则需要做一些转换。
我们可以通过 java.util.Random
类的 nextInt()
方法来生成随机数。例如:
Random rand = new Random();
int randomNum = rand.nextInt();
这会生成一个在 [0, 2^32)
范围内的随机数。
要生成负随机数,我们可以将生成的随机数减去一个固定值,例如 2^31
,并将结果乘以 -1
。这会将随机数的范围变为 [-2^31, 2^31)
,即负数范围。
int randomNegNum = (rand.nextInt() - (int)Math.pow(2, 31)) * -1;
这会生成一个在 [-2^31, 2^31)
范围内的负随机数。
下面是一个完整的示例代码,生成了10个负随机数并输出到控制台上:
import java.util.Random;
public class NegativeRandomDemo {
public static void main(String[] args) {
Random rand = new Random();
for (int i = 0; i < 10; i++) {
int randomNegNum = (rand.nextInt() - (int)Math.pow(2, 31)) * -1;
System.out.println(randomNegNum);
}
}
}
输出:
-1038476121
-55097348
-1371279499
-369597579
-392782729
-1047112637
-2146706390
-801142365
-1087374252
-1117607052
以上就是在Java中生成负随机数的方法。