Rust 练习题
通过动手编程练习和真实场景挑战巩固 Rust 技能。从基础语法和数据结构逐步学习所有权、借用、生命周期、trait、错误处理与并发,掌握编写安全高效程序的方法。
个性化欢迎程序
通过完成一个准备好的 Rust 欢迎程序,练习编辑、检查和运行工作流程。
ChallengeRust
你的第一个 Cargo 项目
在完成并运行一个小型 Rust 程序的过程中,学习终端、nano 以及 Cargo 的基本工作流程。
LabRust
构建温度报告
结合变量、算术运算、数值转换和格式化输出,完成准备好的 Rust 温度报告。
ChallengeRust
变量与简单值
在学习 Rust 变量、可变性、简单值类型、算术运算、类型转换和格式化输出的同时,完成一份小型测量报告。
LabRust
调整食谱份量
完成一个可复用的 Rust 函数,根据新的份数调整已准备好的食材用量。
ChallengeRust
函数与表达式
完成三个小型 Rust 函数,学习参数、实参、返回类型、表达式返回值以及可复用的函数调用。
LabRust
规划发货订单
在一个准备好的 Rust 订单规划器中完成三个关键决策。该规划器结合使用函数、条件、范围循环和累计总数。
ChallengeRust
做出判断并重复执行任务
构建一个简易的运输摘要,同时学习 Rust 中的比较、if 表达式、for 循环、包含端点的范围和累计总和。
LabRust
恢复包裹追踪器
修复一个在移动后继续使用 String 的 Rust 包裹追踪器,同时保留返回值的所有权,不使用克隆。
ChallengeRust
所有权、作用域与移动
通过比较可复制的整数和被移动的 String 数据,阅读有意触发的 E0382 诊断信息,并从函数返回所有权,学习 Rust 所有权。
LabRust
安全更新访客列表
修复访客列表程序,使一个函数借用列表进行检查,另一个函数借用列表进行受控修改。
ChallengeRust
借助引用借用数据
学习使用共享引用和可变引用检查并更新由调用方拥有的 Rust 数据,同时保持调用方的所有权。
LabRust
提取命令关键词
完成一个借用字符串切片的辅助函数,从空命令、单词命令和多词命令中提取第一个关键词。
ChallengeRust
处理字符串和切片
了解拥有所有权的 String 值与借用的 &str 视图之间的关系,创建安全的子字符串,并理解 UTF-8 边界。
LabRust
完成图书目录
完成 Book 构造函数和借阅方法,使目录保留自有标题,并确保只能成功借阅一次。
ChallengeRust