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!("大于"),  
    }  
}
相关推荐
于壮士hoho12 分钟前
Python | Dashboard制作
开发语言·python
Asus.Blogs1 小时前
为什么go语言中返回的指针类型,不需要用*取值(解引用),就可以直接赋值呢?
开发语言·后端·golang
青瓦梦滋1 小时前
【语法】C++的多态
开发语言·c++
C_V_Better1 小时前
Java Spring Boot 控制器中处理用户数据详解
java·开发语言·spring boot·后端·spring
t198751281 小时前
基于Qt的OSG三维建模
java·开发语言
AI视觉网奇2 小时前
3d关键点 可视化
开发语言·python·pygame
向宇it2 小时前
【unity游戏开发——编辑器扩展】使用EditorGUI的EditorGUILayout绘制工具类在自定义编辑器窗口绘制各种UI控件
开发语言·ui·unity·c#·编辑器·游戏引擎
Python私教2 小时前
Rust:重新定义系统编程的安全与效率边界
开发语言·安全·rust
cainiao0806053 小时前
Java 大视界——Java 大数据在智慧交通智能停车诱导系统中的数据融合与实时更新
java·大数据·开发语言
瑞雪兆丰年兮3 小时前
数学实验(Matlab符号运算)
开发语言·算法·matlab·数学实验