📜  Rust – 元组(1)

📅  最后修改于: 2023-12-03 15:04:57.743000             🧑  作者: Mango

Rust – 元组

在 Rust 中,元组是一种可用于将每个元素类型不同的多个值组合在一起的数据结构。Rust 的元组与数组类似,但是元组可以包含不同类型的值,而数组只能包含相同类型的值。

声明元组

Rust 中元组的声明与其它语言的声明方式略有不同。一组以逗号分隔的值可以被视为一个元组,并在括号内注明其类型。

let tuple: (i32, &str, char, f64) = (42, "hello", 'a', 3.14);

在上面的代码中,元组 tuple 包含一个 i32 类型的整数、一个 &str 类型的字符串、一个 char 类型的字符和一个 f64 类型的浮点数。

使用元组

可以使用点号加数字访问元组中的索引。

let tuple: (i32, &str, char, f64) = (42, "hello", 'a', 3.14);
let x = tuple.0;
let y = tuple.1;
let z = tuple.2;
let a = tuple.3;

我们也可以使用模式匹配从元组中提取值。

let tuple: (i32, &str, char, f64) = (42, "hello", 'a', 3.14);
let (x, y, z, a) = tuple;

这将元组 tuple 中的值分配给变量 x, y, za

遍历元组

与数组不同,元组没有迭代器方法。因此,如果我们想遍历元组中的元素,我们需要通过索引和循环实现。

以下代码演示如何遍历一个有四个元素的元组。

let tuple: (i32, &str, char, f64) = (42, "hello", 'a', 3.14);
for i in 0..4 {
    println!("{}", tuple.0);
}
总结

元组是 Rust 中一种有用的数据结构,可以用于将不同类型的值组合在一起。元组的声明方式与其它语言有所不同,可以使用点号或模式匹配访问元组中的元素。元组没有迭代器方法,所以遍历元组需要使用循环和索引。