伪随机数
作为 utils
包的一部分,Java 提供了一个基本的伪随机数生成器,适当地命名为 Random
。此对象可用于生成伪随机值,作为任何内置数值数据类型(int
,float
等)。你还可以使用它生成随机布尔值或随机字节数组。示例用法如下:
import java.util.Random;
...
Random random = new Random();
int randInt = random.nextInt();
long randLong = random.nextLong();
double randDouble = random.nextDouble(); //This returns a value between 0.0 and 1.0
float randFloat = random.nextFloat(); //Same as nextDouble
byte[] randBytes = new byte[16];
random.nextBytes(randBytes); //nextBytes takes a user-supplied byte array, and fills it with random bytes. It returns nothing.
注意:此类仅产生相当低质量的伪随机数,并且永远不应该用于为加密操作或其他高质量随机性至关重要的情况生成随机数(为此,你可能希望使用 SecureRandom
类,如下所述)。对安全和不安全随机性之间区别的解释超出了本例的范围。