Rust 语言基础语法:变量
变量是程序可以操纵的命名存储。 简而言之,变量可以帮助程序存储值。 Rust中的变量与特定的数据类型相关联。 数据类型决定变量的内存大小和布局,可以存储在该内存中的值的范围以及可以对该变量执行的一组操作。
变量命名规则
在本节中,我们将学习命名变量的不同规则。
-
变量的名称可以由字母,数字和下划线字符组成。
-
必须以字母或下划线开头。
-
大写和小写字母是不同的,因为Rust区分大小写。
语法
在声明变量时可以选择不声明数据类型,因 Rust 可以根据赋给变量的值来推断数据类型。
声明变量的语法如下:
let variable_name = value; //没有声明数据类型
let variable_name:dataType = value; //声明了数据类型
示例
fn main() {
let fees = 25_000;
let salary:f64 = 35_000.00;
println!("fees is {} and salary is {}",fees,salary);
}
以上代码的输出结果将会是 fees is 25000 and salary is 35000。
不可变性
在 Rust 中,变量默认是不可变的,只读的。也就是说,变量的值在初始化后不可再被改变。
让我们用一个例子来帮助理解:
fn main() {
let fees = 25_000;
println!("fees is {} ",fees);
fees = 35_000;
println!("fees changed is {}",fees);
}
程序的输出将会如下所示:
error[E0384]: re-assignment of immutable variable `fees`
--> main.rs:6:3
|
3 | let fees = 25_000;
| ---- first assignment to `fees`
...
6 | fees=35_000;
| ^^^^^^^^^^^ re-assignment of immutable variable
error: aborting due to previous error(s)
输出的错误信息指明了出错的原因——你不可以给不可变的变量赋两次值。这是 Rust 使得程序员可以写出安全且易于并发的代码的众多方式之一。
可变性
变量默认是不可变的。在变量名前加上 mut 关键字可以使其可变。可变变量的值可以更改。
声明可变变量的语法如下所示:
let mut variable_name = value;
let mut variable_name:dataType = value;
Let us understand this with an example
fn main() {
let mut fees:i32 = 25_000;
println!("fees is {} ",fees);
fees = 35_000;
println!("fees changed is {}",fees);
}
以上代码段的输出如下所示:
fees is 25000
fees changed is 35000