学习rust_day02

静态类型语言:在构建代码时就已经知道所有数据的类型。

动态类型语言:只有在运行程序时才知道数据的类型。且某个变量在运行时可以持有不同类型的数据。

强类型语言:对赋值给变量的类型有较强约束。

弱类型语言:存在隐式类型转换语法的语言。


声明一个常量

  • 使用const声明
  • 不能使用mut
  • 必须标注类型
  • 可以在任意作用域声明
  • 仅可以使用常量表达式赋值

例如:const ABC: i32 = 60 * 60;


变量遮蔽

let A = 1;

let A = 2;

此时rust不会报错,而是会使用最新的变量 A = 2;

例如:

1
2
3
4
5
6
7
8
9
fn main() {
let x = 5;
let x = x + 2;
{
let x = x * 6;
println!("ONE: {}", x); //此时x的输出是42
}
println!("TWO: {}", x); //此时x的输出是7
}

数据类型
标量类型:表示一个单一的值

  • 整型(字节:b’A’归属于整形且只占一个字节)
  • 浮点
  • 布尔
  • 字符(反常的占用四个字节,使用Unicode字符集)

复合类型:多个值组合在一个类型里

  • 元组(长度固定且可以包含不同类型元素)
1
2
let tup: (i32, f64, u8) = (500, 16.4, 1); //显示标明了元组中元素的类型。
let A = tup.0; //访问元组中的元素。
  • 数组(长度固定但类型元素需要相同)
1
2
3
let arr: [i32; 3] = [1, 2, 3]; //标明数组的类型与数组长度。
let a = [3; 5]; //快速创建数组包含5个3。
let first = arr[0]; //访问数组的元素。

学习rust_day02
https://zlsf-zl.github.io/2026/03/12/学习rust-day02/
作者
ZLSF
发布于
2026年3月12日
许可协议