Rust 元组
提示
- 元组的定义和用途:Rust 元组可以存储不同数据类型的值,具有固定大小,一旦创建,其大小不可改变。
- 创建和访问元组:元组可以带或不带数据类型声明创建,访问元组的元素通过索引(如
tuple.0
),索引从 0 开始。 - 元组的可变性和解构:使用
mut
关键字创建可变元组,允许修改元素值,但不改变元素类型。元组解构允许将元组的值分配给单独的变量。
Rust 中的元组允许我们存储不同数据类型的值。例如,
let tuple = ('Hello', 5, 3.14);
在这里,我们使用小括号 ( )
创建了一个元组,并且它能够同时存储一个字符串值 Hello
、一个整数值 5
和一个浮点数值 3.14
。
注意:在 Rust 中,元组具有固定大小,创建后无法增长或缩小。
在 Rust 中创建元组
在 Rust 中,我们可以用两种不同的方式创建元组:
- 带数据类型的元组
- 不带数据类型的元组
让我们详细了解它们各自的特点。
带数据类型的 Rust 元组
在创建元组时,我们可以声明它存储的数据类型。例如,
// 创建带数据类型的元组
let student_info: (&str, u8, f32) = ("Ricky", 21, 3.56);
这里,
let student_info: (&str, u8, f32)
- 指定了变量名称和元组元素的数据类型("Ricky", 21, 3.56)
- 指定了元组的元素
示例:带数据类型的元组
fn main() {
// 初始化带数据类型的元组
let tuple: (&str, f32, u8) = ("Rust", 3.14, 100);
println!("元组内容 = {:?}", tuple);
}
输出
元组内容 = ("Rust", 3.14, 100)
注意: 我们 在 println!
函数中使用 :?
来打印整个元组。
不带数据类型的 Rust 元组
我们可以在不声明数据类型的情况下创建元组。Rust 编译器可以自动检测并设置数据类型。例如,
// 创建不带数据类型的元组
let student_info = ("Ricky", 21, 3.56);
这里,
let student_info
- 指定了元组的变量名("Ricky", 21, 3.56)
- 指定了元组的元素
示例:不带数据类型的元组
fn main() {
// 初始化 不带数据类型的元组
let tuple = ("Rust", "fun", 100);
println!("元组内容 = {:?}", tuple);
}