文章目录
- 1、 变量定义
- 2、 变量命名规则
- 3、不可变与可变
- 4、变量隐藏
- 5、类型推断
1、 变量定义
如果要声明变量,需要使用 let 关键字。每个变量都有一个唯一的名称。 声明变量后,可将其绑定到某个值,也可稍后在程序中绑定该值。 以下代码声明名为 a的变量。
rust">let a;
a变量尚未绑定到某个值,在没有绑定前不能使用,因此补充赋值语句。
rust">a=10;
以上语句可以合并成如下语句。
rust">let a= 10;
2、 变量命名规则
变量都有一个唯一的名称,命名规则如下。
- 变量名可以由字母、数字、下划线组成;
- 必须以字母或下划线开头;
- 大小写字母是不同的,因为 Rust 区分大小写;
- 变量名不能使用保留字。
3、不可变与可变
在 Rust 中,变量绑定默认不可变。 如果变量不可变,在将值绑定到名称后,将无法更改此值。
例如,如果我们尝试更改前面示例中 a 变量的值,则会收到来自编译器的错误消息。
rust">let a= 10;//定义的是不可变变量
a= 15;//改变这个变量值会报错
若要更改值,必须先使用 mut 关键字将变量绑定设为可变。
rust">let mut b= 10;//可变变量
b= 15;//可以被赋值,语句正确
4、变量隐藏
可以声明与某个现有变量同名的新变量。 新的声明会创建新的绑定。 在 Rust 中,此操作称为“隐藏”,这是由于新变量会隐藏上一个变量。 旧变量仍存在,但无法在此范围内引用它。
以下代码演示隐藏的用法。 声明名为 c 的变量。 我们没有将变量定义为可变变量,因为每个 let 操作都会创建一个名为 c 的新变量,同时隐藏以前的变量绑定。
rust">let c = 1;// 声明名为“c”的第一个变量绑定,该值为1let c = c + 1; 声明第二个变量绑定,隐藏现有变量“c”,该值为2
let c = c * 2; // 声明第三个变量绑定,隐藏变量“c”的第二个绑定,该值为4
5、类型推断
Rust 是强类型语言,上面语句会自动判断变量的类型。下面语句会报错误的:
rust">let mut b= 10;//可变变量,推断为整数变量
b = "abc";//"abc"是字符串,不能赋给整型变量
b= 4.56; //实数不能自动转换为整数,不能赋给整型变量
不能推断类型的,必须明确类型。声明类型可以在变量名后跟冒号(:),并写明类型。
rust">let mut d:u32=10;//变量为u32类型
let mut e:i64;//变量为i64类型