检查点
什么是变量?
本课程讲解变量是什么以及它们如何存储数据。
变量
变量就像一个存储盒子,与一个关联的名称配对,用于存放数据。这个关联的名称称为标识符,而存入变量中的数据称为值。
默认情况下,变量是不可变的,这意味着你无法重新赋值给它们。
...
创建变量
要创建一个变量,使用 let 绑定关键字,后跟变量名。
什么是绑定?
Rust 将声明称为绑定,因为它们在创建时将名称与值关联起来。let是一种声明语句。
...
命名规范:
按照惯例,变量名应使用蛇形命名法(snake_case),即:
- 所有字母均为小写。
- 单词之间用下划线(_)分隔。
初始化变量
可以在声明变量的同时为其赋值,这个过程称为初始化。此时,值被绑定到该变量上。
...
注意: 你可以先声明变量,稍后再赋值。但不建议这样做,因为它可能导致使用未初始化的变量。
下面的例子声明了一个名为 language 的变量,并将其初始化为值 Rust,然后打印该变量的值:
1fn main() { 2 let language = "Rust"; // 定义一个变量 3 println!("Language: {}", language); // 打印变量 4}
注意: 与数字一样,你不能直接在
println!()中打印变量。你需要使用占位符。
如何让变量变为可变?
在本课开头提到,变量默认是不可变的,直到你希望修改它时,才可以将其设为可变。
要使变量可变,需在 let 后加上 mut 关键字和变量名。
...
1fn main() { 2 let mut language = "Rust"; // 定义一个可变变量 3 println!("Language: {}", language); // 打印变量 4 language = "Java"; // 更新变量 5 println!("Language: {}", language); // 打印变量的更新后的值 6}
同时赋值多个变量
可以在一条语句中同时为多个变量赋值。
...
1fn main() { 2 let (course, category) = ("Rust", "beginner"); // 同时赋多个值 3 println!("This is a {} course in {}.", category, course); // 打印值 4}
注意: 如果某个变量未被赋值或未被使用,编译器会发出警告。
若要消除此类警告,请在程序代码开头添加:
#[allow(unused_variables, unused_mut)]
但不推荐保留未赋值或未使用的变量。
测验
测试你对 Rust 中变量的理解!
现在你已经学习了变量的相关知识,接下来我们将学习变量的作用域和遮蔽机制。
Quiz
单选题
以下哪一项不是默认变量的属性?
1 / 2