Function core::iter::repeat 1.0.0[−][src]
pub fn repeat<T: Clone>(elt: T) -> Repeat<T>ⓘ
Expand description
创建一个新的迭代器,该迭代器不断重复单个元素。
repeat()
函数一次又一次地重复单个值。
无限迭代器 (如 repeat()
) 通常与适配器 (如 Iterator::take()
) 一起使用,以使其具有有限性。
如果所需的迭代器元素类型未实现 Clone
,或者不想将重复的元素保留在内存中,则可以改用 repeat_with()
函数。
Examples
基本用法:
use std::iter; // 第四个 4ever: let mut fours = iter::repeat(4); assert_eq!(Some(4), fours.next()); assert_eq!(Some(4), fours.next()); assert_eq!(Some(4), fours.next()); assert_eq!(Some(4), fours.next()); assert_eq!(Some(4), fours.next()); // 是的,还是四个 assert_eq!(Some(4), fours.next());Run
用 Iterator::take()
进行有限化:
use std::iter; // 最后一个例子太多了。我们只有四个四。 let mut four_fours = iter::repeat(4).take(4); assert_eq!(Some(4), four_fours.next()); assert_eq!(Some(4), four_fours.next()); assert_eq!(Some(4), four_fours.next()); assert_eq!(Some(4), four_fours.next()); // ... 现在我们完成了 assert_eq!(None, four_fours.next());Run