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!("大于"),  
    }  
}
相关推荐
知远同学30 分钟前
Anaconda的安装使用(为python管理虚拟环境)
开发语言·python
小徐Chao努力37 分钟前
【Langchain4j-Java AI开发】09-Agent智能体工作流
java·开发语言·人工智能
CoderCodingNo44 分钟前
【GESP】C++五级真题(贪心和剪枝思想) luogu-B3930 [GESP202312 五级] 烹饪问题
开发语言·c++·剪枝
kylezhao20191 小时前
第1章:第一节 开发环境搭建(工控场景最优配置)
开发语言·c#
啃火龙果的兔子1 小时前
JavaScript 中的 Symbol 特性详解
开发语言·javascript·ecmascript
热爱专研AI的学妹2 小时前
数眼搜索API与博查技术特性深度对比:实时性与数据完整性的核心差异
大数据·开发语言·数据库·人工智能·python
Mr_Chenph2 小时前
Miniconda3在Windows11上和本地Python共生
开发语言·python·miniconda3
阿狸远翔2 小时前
Protobuf 和 protoc-gen-go 详解
开发语言·后端·golang
永远前进不waiting2 小时前
C复习——1
c语言·开发语言
伯明翰java2 小时前
Java数据类型与变量
java·开发语言