Function rand::random
[-] [+]
[src]
pub fn random<T: Rand>() -> T
Generates a random value using the thread-local random number generator.
random()
can generate various types of random things, and so may require
type hinting to generate the specific type you want.
This function uses the thread local random number generator. This means
that if you're calling random()
in a loop, caching the generator can
increase performance. An example is shown below.
Examples
let x = rand::random(); println!("{}", 2u8 * x); let y = rand::random::<f64>(); println!("{}", y); if rand::random() { // generates a boolean println!("Better lucky than good!"); }
Caching the thread local random number generator:
use rand::Rng; let mut v = vec![1, 2, 3]; for x in v.iter_mut() { *x = rand::random() } // would be faster as let mut rng = rand::thread_rng(); for x in v.iter_mut() { *x = rng.gen(); }