Rust的元组(Tuple)类型
Rust的元组(Tuple)类型
元组(tuple)是一种异构有限序列:
- 异构 指元组内的元素可以是不同的类型
- 有限 是指元组有固定长度
创建元组
使用包含在圆括号中的逗号分隔的值列表来创建一个元组。元组中的每一个位置都有一个类型,而且这些不同值的类型也不必是相同的:
fn main() {
let tup: (i32, f64, u8) = (500, 6.4, 1);
}
tup
变量绑定到整个元组上,因为元组是一个单独的复合元素。
元组取值
为了从元组中获取单个值,可以使用模式匹配(pattern matching)来解构元组值:
fn main() {
let tup = (500, 6.4, 1);
let (x, y, z) = tup;
println!("The value of y is: {}", y);
}
除了使用模式匹配解构外,也可以使用点号(.
)后跟值的索引来直接访问它们:
fn main() {
let x: (i32, f64, u8) = (500, 6.4, 1);
let five_hundred = x.0;
let six_point_four = x.1;
let one = x.2;
}
跟大多数编程语言一样,元组的第一个索引值是 0。
特殊元组
当元组中只有一个元素时,需要加逗号,即 (1,)
空元组,`()`