【05】RUST常用的集合函数宏类型
文章目录
- 常用集合
-
- Vec
- String
- HashMap
- 宏
-
- 打印
- 类型
-
- `Option<T>`
- 常用crate
-
- std
-
- fs
常用集合
Vec
- 堆上连续内存
- vector可能出现扩容,把老元素copy到内存新位置
- 因此不允许
let first = &v[0];
作用域内调用v.push(4);
- 因此不允许
// 定义
let v: Vec<i32> = Vec::new();
let v = vec![1, 2, 3]; // 使用vec!宏定义
// 增加元素
v.push(4);
// 取数值
v[2]; // 下标索引
v.get(2); // 调用get
// 越界时不会panic,会返回None
v.get(100);
v[100];
// 遍历
for i in &v{
// 不可变遍历元素
println!("{i}");
}
for i in &mut v{
// 可变遍历元素
*i += 50;
}
// 融合枚举可以往vec中填充多种数据类型
enum SpreadsheetCell {
Int(i32),
Float(f64),
Text(String),
}
let row = vec![
SpreadsheetCell::Init(3),
SpreadsheetCell::Text("x_x")