Rust入门2——随机数

文章目录

简单列出两个Rust的小例子

一、生成随机数

在Cargo.toml的dependencies中引入rand,指定rand的版本

rust 复制代码
[dependencies]  
rand = "^0.3.14"

之后在主函数中调用rand函数,生成随机数

rust 复制代码
use rand::Rng;  
  
fn main() {  
    println!("Hello, world!");  
    println!("猜测一个数");  
    let secretNum = rand::thread_rng().gen_range(1,101);  
    println!("生成的数字是{}",secretNum);  
}

二、比较两个数相等

match表达式,类似switch。cmp用于比较,=>可以认为是case

rust 复制代码
use std::io::stdin;  
use std::cmp::Ordering;  
use rand::Rng;  
  
  
fn main() {  
    println!("Hello, world!");  
    println!("猜测一个数");  
    //mut代表该值可变,new方法是String的关联函数,类似java中的静态方法  
    let mut number = String::new();  
    stdin().read_line(&mut number).expect("无法读取行");  
    let secretNum = rand::thread_rng().gen_range(1,101);  
    println!("生成的数字是{}",secretNum);  
    println!("你猜的数字是:{}",number);  
    //将number由字符串转换为u32类型  
    let number: u32 = number.trim().parse().expect("请输入数字");  
    match number.cmp(&secretNum) {  
        Ordering::Less=>println!("小了"),  
        Ordering::Equal=>println!("等于"),  
        Ordering::Greater=>println!("大于"),  
    }  
}
相关推荐
醇氧4 小时前
【Windows】优雅启动:解析一个 Java 服务的后台启动脚本
java·开发语言·windows
MapGIS技术支持5 小时前
MapGIS Objects Java计算一个三维点到平面的距离
java·开发语言·平面·制图·mapgis
程序员zgh5 小时前
C++ 互斥锁、读写锁、原子操作、条件变量
c语言·开发语言·jvm·c++
小灰灰搞电子6 小时前
Qt 重写QRadioButton实现动态radioButton源码分享
开发语言·qt·命令模式
by__csdn6 小时前
Vue3 setup()函数终极攻略:从入门到精通
开发语言·前端·javascript·vue.js·性能优化·typescript·ecmascript
喵了meme6 小时前
C语言实战5
c语言·开发语言
廋到被风吹走6 小时前
【Java】常用设计模式及应用场景详解
java·开发语言·设计模式
Sammyyyyy6 小时前
DeepSeek v3.2 正式发布,对标 GPT-5
开发语言·人工智能·gpt·算法·servbay
Luna-player7 小时前
在前端中,<a> 标签的 href=“javascript:;“ 这个是什么意思
开发语言·前端·javascript
小草cys7 小时前
项目7-七彩天气app任务7.4.2“关于”弹窗
开发语言·前端·javascript