数据类型
标量类型、复合类型 tuple/array、类型推导、类型别名 type
数据类型
Rust 是静态强类型语言——编译器必须在编译期知道所有变量的类型。标量 + 复合两大类。
学完本章你将: 掌握标量类型、tuple/array 复合类型、类型推导。
标量类型
rust
fn main() {
// 整数
let i: i32 = 42; // 有符号 32 位
let u: u64 = 100; // 无符号 64 位
let arch: isize = 0; // 平台相关(32/64)
let byte: u8 = b'A'; // 字节字面量
// 浮点
let f: f64 = 3.14159; // 双精度(默认)
let g: f32 = 2.71828; // 单精度
// 布尔
let t = true;
let f: bool = false;
// 字符(Unicode 标量值,4 字节)
let c = '中';
let emoji = '🦀';
}
复合类型
rust
// 元组(不同类型组合)
let tup: (i32, f64, char) = (42, 3.14, 'A');
let (x, y, z) = tup; // 解构
println!("{}", tup.0); // 索引访问
// 数组(同类型、固定长度)
let arr: [i32; 5] = [1, 2, 3, 4, 5];
let zeros = [0; 100]; // [0, 0, ..., 0] 100 个
println!("{}", arr[0]);
println!("{}", arr.len());
类型别名
rust
type Kilometers = i32;
let distance: Kilometers = 5;
// 和 i32 完全等价