Rust入门06-数据类型:复合类型
数据类型-复合类型
-
复合类型
复合类型可以将多个值放入一个类型里
Rust提供了两种基础的复合类型:
-
Tuple(元组)
可将多个类型的多个值放在同一个类型中,其长度是固定的,一旦声明就无法改变
创建Tuple:
在小括号中,将值用逗号分开,在Tuple中每个位置都对应一个类型,Tuple中各元素的类型不必相同
let tup: (i32, f64, u8) = (500, 6.4, 1);
获取Tuple的元素值:
可以使用模式匹配来解构(destructure)一个Tuple来获取元素的值
let (x, y, z) = tup;
访问Tuple的元素值:
在Tuple变量使用点标记法,后接元素的索引号
println!("{}, {}, {}",tup.0, tup.1, tup.2);
-
Array(数组)
可将单个类型的多个值放在同一个类型中,其长度是固定的,一旦声明就无法改变
声明数组:
在中括号中,将值用逗号分开
let a = [1, 2, 3, 4, 5];
数组用处:
将数据存放在 stack(栈) 上而不是 heap(堆) 上
保证固定数量的元素
但是数组没有Vector灵活,Vector与数组类型,其由标准库提供,Vector的长度可以改变,一般情况均使用Vector
数组类型:
数组类型以此类形式表示:[类型;长度]
let a:[i32;5] = [1,2,3,4,5];
其他声明数组方法:
如果数组中每个元素值都相同,那么可以:
- 在中括号中指定初始值
- 然后写下 “ ; ”
- 最后是数组长度
let a = [3;5]; let a ] [3,3,3,3,3];
访问数组元素:
数组是在 stack 上分配的单个块的内存
可以使用索引来访问数组的元素
let first = months[0]; let second = months[1];
数组越界时:
-
本文来自博客园,作者:Baby091,转载请注明原文链接:https://www.cnblogs.com/microwang/p/15996216.html