Rust 数据类型学习笔记
在 Rust 中,数据类型分为两大类:基本数据类型和复合数据类型。其中基本数据类型包括整型、浮点型、布尔型和字符型;复合数据类型包括元组、数组和结构体。下面我们逐一介绍这些数据类型。
整型
在 Rust 中,整数的大小可以通过 i 和 u 前缀指定。i 表示有符号整数,u 表示无符号整数。具体而言,i8 代表 8 位有符号整数,i16 代表 16 位有符号整数,以此类推。同理,u8 代表 8 位无符号整数,u16 代表 16 位无符号整数,以此类推。例如:
rustCopy Codelet x: i32 = 42;
let y: u64 = 123456789;
浮点型
Rust 中的浮点型包括 f32 和 f64。f32 对应单精度浮点数,f64 对应双精度浮点数。例如:
rustCopy Codelet x: f32 = 3.14159;
let y: f64 = 2.71828;
布尔型
Rust 中的布尔型有两个值:true 和 false。布尔型的字节大小为 1。例如:
rustCopy Codelet x: bool = true;
let y: bool = false;
字符型
Rust 中的字符型表示单个 Unicode 字符。字符型使用单引号(')包围。例如:
rustCopy Codelet x: char = 'a';
let y: char = '😃';
元组
元组是将多个值组合在一起形成单个复合值的方式。每个元素的类型可以不同,通过使用逗号分隔值,并将所有值括在圆括号中来创建元组。例如:
rustCopy Codelet tup: (i32, f64, char) = (42, 3.14159, 'a');
可以通过解构将元组的各个元素赋值给不同的变量:
rustCopy Codelet (x, y, z) = tup;
也可以直接访问元组的某个元素:
rustCopy Codelet x = tup.0;
数组
数组是一个包含固定数量元素的序列。数组的大小用于类型检查,并且它们通常在堆栈上分配空间。要创建一个数组,需要指定元素类型和元素数量,并使用方括号([])将元素括起来。例如:
rustCopy Codelet arr: [i32; 3] = [1, 2, 3];
可以通过索引访问数组的元素:
rustCopy Codelet x = arr[0];
结构体
结构体是一个存储不同数据类型的相关值的自定义数据类型。结构体的定义使用关键字 struct。例如:
rustCopy Codestruct Person {
name: String,
age: u32,
is_student: bool,
}
可以通过实例化结构体来创建结构体的值:
rustCopy Codelet p = Person {
name: String::from("Alice"),
age: 20,
is_student: true,
};
可以使用点运算符访问结构体的字段:
rustCopy Codelet name = p.name;
以上就是 Rust 中的基本数据类型和复合数据类型。通过使用这些数据类型,我们可以轻松地定义变量、常量和自定义数据类型,并执行各种操作。