asp.net网站建设教程,湖南二维码标签报价,帝国网站模板建设,网站建设整改报告复合类型#xff08;compound type#xff09;
可以将多个不同类型的值组合为一个类型。
Rust中提供了两种内置的复合数据类型#xff1a;元组#xff08;tuple#xff09;和数组#xff08;array#xff09;。
元组类型
元组是一个具有 固定长度 的数据集合 —— 无…复合类型compound type
可以将多个不同类型的值组合为一个类型。
Rust中提供了两种内置的复合数据类型元组tuple和数组array。
元组类型
元组是一个具有 固定长度 的数据集合 —— 无法在声明结束后增加或减少其中的元素数量。
元素使用逗号分隔放入一对圆括号()中。元组每个位置的值都有一个类型这些类型不需要是相同的。例如
let tup: (i32, f64, u8) (123, 6.5, 1);
// tup.0 等于 123
// tup.1 等于 6.5
// tup.2 等于 1
let (x, y, z) tup;
// y 等于 6.5由于一个元组被视作一个单独的复合元素所以这里的变量tup被绑定到了整个元组上。为了从元组中获得单个的值我们可以使用模式匹配来解构destructuring元组
fn main() {let tup: (i32, f64, u8) (123, 6.5, 1);let (x, y, z) tup;println!(the value of y is: {}, y); // 输出 the value of y is: 6.6
}除了解构我们还可以通过索引并使用点号.来访问元组中的值
fn main() {let tup: (i32, f64, u8) (123, 6.5, 1);let x tup.0;let y tup.1;let z tup.2;println!(x {}, y {}, z {}, x, y, z); // 输出 x 123, y 6.5, z 1
}这段程序首先创建了一个元组tup随后又通过索引访问元组的各个元素并将它们的值绑定到新的变量上。元素的索引从 0 开始。
数组类型
Rust中的数组
数组元素必须是相同的类型数组拥有固定的长度一旦声明就不能随意更改大小。
在Rust中将逗号分隔的值放置在一对**方括号[]**内来创建一个数组
// arr 是一个长度为 5 的整型数组
let arr [1, 2, 3, 4, 5];定义数组是可以指定数组类型和大小如
//长度为 5 的 i32 数组
let arr: [i32; 5] [1, 2, 3, 4, 5];若声明的数组具有相同数值可以按照如下形式定义
// 等同于 let d [3, 3, 3, 3, 3];
let arr [3; 5];对于一个数组 arr可以通过索引访问其中的元素比如 arr[2] 为数组 arr 中下标为 2 的元素。数组元素下标从 0 开始。例如下面的程序
fn main() {let a [1, 2, 3, 4, 5];println!(a[0] {}, a[1] {}, a[0], a[1]); // 输出 a[0] 1, a[1] 2
}