在 Rust编程教程 中,随机数是一个常见且实用的功能。无论是游戏开发、模拟实验还是安全加密,都离不开高质量的随机数。Rust标准库本身不提供完整的随机数功能,但官方推荐使用 rand 库——这是一个强大、安全且易于使用的 Rust rand库。本文将带你从零开始,一步步学会如何在Rust项目中使用 rand 生成各种类型的随机数,非常适合 Rust新手入门。
首先,你需要在你的 Rust 项目中引入 rand 库。打开项目根目录下的 Cargo.toml 文件,在 [dependencies] 部分添加以下内容:
[dependencies]rand = "0.8" 保存后,运行 cargo build 或直接运行程序,Cargo 会自动下载并编译 rand 库。
下面是最基础的用法:生成一个 1 到 100 之间的随机整数。
use rand::Rng;fn main() { let mut rng = rand::thread_rng(); let random_number: u32 = rng.gen_range(1..=100); println!("随机数是: {}", random_number);} 解释一下这段代码:
use rand::Rng;:导入 Rng trait,它提供了生成随机数的方法。rand::thread_rng():获取一个线程本地的随机数生成器,性能高且线程安全。gen_range(1..=100):生成 [1, 100] 范围内的随机整数(包含100)。除了整数,rand 还能生成浮点数、布尔值、字符,甚至从数组中随机选择元素。
use rand::Rng;fn main() { let mut rng = rand::thread_rng(); // 随机浮点数 [0.0, 1.0) let f: f64 = rng.gen(); println!("随机浮点数: {:.4}", f); // 随机布尔值 let b: bool = rng.gen(); println!("随机布尔值: {}", b); // 从数组中随机选一个元素 let choices = ['A', 'B', 'C', 'D']; let choice = rng.choose(&choices).unwrap(); println!("随机选择: {}", choice);} 如果你需要更复杂的随机分布(比如正态分布),rand 也支持。例如:
use rand::distributions::{Normal, Distribution};fn main() { let normal = Normal::new(0.0, 1.0).unwrap(); // 均值0,标准差1 let mut rng = rand::thread_rng(); let value = normal.sample(&mut rng); println!("来自正态分布的随机数: {:.4}", value);} 注意:使用 Normal 需要启用 rand_distr 特性。你可以在 Cargo.toml 中这样写:
[dependencies]rand = { version = "0.8", features = ["rand_distr"] } 通过本篇 Rust新手入门 教程,你应该已经掌握了如何使用 Rust rand库 来生成各种类型的随机数。无论是简单的整数、浮点数,还是复杂的概率分布,rand 都能轻松应对。记住,良好的随机数生成是许多应用的基础,而 rand 正是 Rust 生态中最可靠的选择之一。
现在就动手试试吧!创建你的第一个随机数程序,体验 Rust随机数生成 的魅力。
本文由主机测评网于2025-12-21发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/20251210767.html