pub fn random<T>() -> Twhere
Standard: Distribution<T>,
Expand description
Generates a random value using the thread-local random number generator.
This function is simply a shortcut for rand::rng().gen()
:
- See
ThreadRng
for documentation of the generator and security - See
Standard
for documentation of supported types and distributions
§Examples
let x = rand::random::<u8>();
println!("{}", x);
let y = rand::random::<f64>();
println!("{}", y);
if rand::random() { // generates a boolean
println!("Better lucky than good!");
}
If you’re calling random()
in a loop, caching the generator as in the
following example can increase performance.
use rand::Rng;
let mut v = vec![1, 2, 3];
for x in v.iter_mut() {
*x = rand::random()
}
// can be made faster by caching rand::rng
let mut rng = rand::rng();
for x in v.iter_mut() {
*x = rng.random();
}