|
|
|
@ -4,10 +4,10 @@
|
|
|
|
|
> <br>
|
|
|
|
|
> commit 820ac357f6cf0e866e5a8e7a9c57dd3e17e9f8ca
|
|
|
|
|
|
|
|
|
|
Rust 标准库中包含一系列被称为 **集合**(*collections*)的非常有用的数据结构。大部分其他数据类型都代表一个特定的值,不过集合可以包含多个值。不同于内建的数组和元组类型,这些集合指向的数据是储存在堆上的,这意味着数据的数量不必在编译时就已知,并且还可以随着程序的运行增长或缩小。每种集合都有着不同功能和成本,而根据当前情况选择合适的集合,这是一项始终成长的技能。在这一章里,我们将详细的了解三个在 Rust 程序中被广泛使用的集合:
|
|
|
|
|
Rust 标准库中包含一系列被称为 **集合**(*collections*)的非常有用的数据结构。大部分其他数据类型都代表一个特定的值,不过集合可以包含多个值。不同于内建的数组和元组类型,这些集合指向的数据是储存在堆上的,这意味着数据的数量不必在编译时就已知,并且还可以随着程序的运行增长或缩小。每种集合都有着不同功能和成本,而根据当前情况选择合适的集合,这是一项应当逐渐掌握的技能。在这一章里,我们将详细的了解三个在 Rust 程序中被广泛使用的集合:
|
|
|
|
|
|
|
|
|
|
* *vector* 允许我们一个挨着一个地储存一系列数量可变的值
|
|
|
|
|
* **字符串**(*string*)是一个字符的集合。我们之前见过 `String` 类型,不过在本章我们将深入了解。
|
|
|
|
|
* **字符串**(*string*)是字符的集合。我们之前见过 `String` 类型,不过在本章我们将深入了解。
|
|
|
|
|
* **哈希 map**(*hash map*)允许我们将值与一个特定的键(key)相关联。这是一个叫做 *map* 的更通用的数据结构的特定实现。
|
|
|
|
|
|
|
|
|
|
对于标准库提供的其他类型的集合,请查看[文档][collections]。
|
|
|
|
|