|
|
@ -197,7 +197,7 @@ fn main() {
|
|
|
|
而 `IntoIterator` 强调的是某一个类型如果实现了该特征,它可以通过 `into_iter`,`iter` 等方法变成一个迭代器。
|
|
|
|
而 `IntoIterator` 强调的是某一个类型如果实现了该特征,它可以通过 `into_iter`,`iter` 等方法变成一个迭代器。
|
|
|
|
|
|
|
|
|
|
|
|
## 消费者与适配器
|
|
|
|
## 消费者与适配器
|
|
|
|
消费者是迭代器上的方法,它会消费掉迭代器中的元素,然后返回其它类型的值,这些消费者都有一个共同的特点:在它们的定义中,都依赖 `next` 方法来消费元素,因此这也是为什么迭代器要实现 `Iterator` 特征,而该特征必须要实现 `next` 方法的原因。
|
|
|
|
消费者是迭代器上的方法,它会消费掉迭代器中的元素,然后返回其类型的值,这些消费者都有一个共同的特点:在它们的定义中,都依赖 `next` 方法来消费元素,因此这也是为什么迭代器要实现 `Iterator` 特征,而该特征必须要实现 `next` 方法的原因。
|
|
|
|
|
|
|
|
|
|
|
|
#### 消费者适配器
|
|
|
|
#### 消费者适配器
|
|
|
|
只要迭代器上的某个方法 `A` 在其内部调用了 `next` 方法,那么 `A` 就被称为**消费性适配器**:因为 `next` 方法会消耗掉迭代器上的元素,所以方法 `A` 的调用也会消耗掉迭代器上的元素。
|
|
|
|
只要迭代器上的某个方法 `A` 在其内部调用了 `next` 方法,那么 `A` 就被称为**消费性适配器**:因为 `next` 方法会消耗掉迭代器上的元素,所以方法 `A` 的调用也会消耗掉迭代器上的元素。
|
|
|
|