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 为 25000 ,Salary 为 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