Rust - 变量
变量是程序可以操作的命名存储空间。简单来说,变量帮助程序存储值。Rust 中的变量与特定的数据类型相关联。数据类型决定了变量内存的大小和布局、可存储在该内存中的值范围以及可以对变量执行的操作集。
命名变量的规则
在本节中,我们将学习命名变量的不同规则。
变量名可以由字母、数字和下划线字符组成。
它必须以字母或下划线开头。
因为 Rust 是区分大小写的,大小写字母是不同的。
语法
在 Rust 中声明变量时,数据类型是可选的。数据类型会从赋给变量的值中推断出来。
声明变量的语法如下所示。
let variable_name = value; // no type specified let variable_name:dataType = value; //type specified
示例
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)
错误消息指出了错误原因:不能对不可变变量 fees 赋值两次。这是 Rust 允许程序员编写代码并利用安全性和易并发性的众多方式之一。
可变
变量默认是不可变的。要使变量可变,请在变量名前添加 mut 关键字。可变变量的值可以被更改。
声明可变变量的语法如下所示 −
let mut variable_name = value;
let mut variable_name:dataType = value;
让我们通过一个例子来理解这一点
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