变量与可变性
Rust中的变量默认只能赋值一次,即变量默认是不可变的。如下
fn main() {
let i = 10;
let j;
j = 20;
println!("{}",i);
println!("{}",j);
//以下写法是错误的
i = 20;
j = 20;
}
如果要想变量可以被多次修改,则需要使用mut
关键字修饰。如下
fn main() {
let mut i = 10;
let mut j;
j = 20;
println!("{}",i);
println!("{}",j);
i = 200;
j = 2000;
println!("{}",i);
println!("{}",j);
}
变量遮罩
常量
常量通过const关键字修饰,常量名称一般大写。
- 常量必须指定类型。通过冒号后添加数据类型。
const i:i32 = 20;
数据类型
Rust中给变量赋值会自动推断数据类型。(VSCode开发工具需要安装Rust-analyzer插件)
数据类型的分类
- 基本数据类型
- 整数类型
- 浮点类型
- 布尔类型
- 字符类型
- 范围类型
- 复合类型
整数类型
长度 | 有符号 | 无符号 |
---|---|---|
1字节 | i8 | u8 |
2字节 | i16 | u16 |
4字节 | i32 | u32 |
8字节 | i64 | u64 |
16字节 | i128 | u128 |
浮点类型
浮点类型是指小数类型,包括f32和f64。
布尔类型
布尔类型只有true和false两个值。
字符类型
字符占用4个字节。采用UTF-8编码。
范围类型