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!("大于"),  
    }  
}
相关推荐
是小崔啊7 分钟前
JVM -垃圾回收机制
java·开发语言·jvm
SomeB1oody12 分钟前
【Rust自学】6.3. 控制流运算符-match
开发语言·前端·rust
undeflined15 分钟前
vite + vue3 + tailwind 启动之后报错
开发语言·后端·rust
积极向上的Elbert33 分钟前
Mybatis-Plus中的Page方法出现Records的值大于0但是total的值一直是0
java·开发语言·mybatis
No0d1es37 分钟前
2024年12月青少年软件编程(C语言/C++)等级考试试卷(三级)
c语言·开发语言·青少年编程·电子学会·三级
犬余41 分钟前
《Java源力物语》-4.集合府邸的新秀
java·开发语言
yuanbenshidiaos41 分钟前
QT-------认识QT
开发语言·qt
海螺姑娘的小魏1 小时前
Effective C++ 条款 16:成对使用 `new` 和 `delete` 时要采取相同形式
开发语言·c++
neter.asia1 小时前
C# 窗体应用程序嵌套web网页,基于谷歌浏览器内核(含源码)
开发语言·c#
2301_809177471 小时前
sqoop,flume草稿
开发语言