Rust Iterator
Table of Contents
1. Rust Iterator
1.1. iterator
1.1.1. Iterator
1.1.2. DoubleEndedIterator
DoubleEndedIterator 在 Iterator 基础上增加了反向遍历的支持. 只有 DoubleEndedIterator 才支持 rev() 操作.
增加了 rfind, rfold, next_back 等和反向遍历有关的操作.
Vec, LinkedList,Chars 等的 iterator 都是 DoubleEndedIterator
1.1.3. ExactSizeIterator
ExactSizeIterator 提前知道自己的长度, 所以支持 len(), is_empty(), Vec 是 DoubleEndedIterator, 但 Chars 并不是.
1.2. source
1.2.1. range
1.2.2. into_iter
1.2.3. iter
1.2.4. iter_mut
1.2.5. drain
1.2.6. Vec
1.2.6.1. windows
1.2.6.2. chunks
1.2.6.3. split
1.2.7. String
1.2.7.1. bytes
1.2.7.2. chars
1.2.7.3. lines
1.2.7.4. split
1.2.7.5. split_whitespaces
1.2.8. Map
1.2.8.1. keys
1.2.8.2. values
1.2.9. Iter
1.2.9.1. empty
1.2.9.2. once
1.2.9.3. repeat/repeat_with
1.3. adapter
1.3.1. chain
1.3.2. cloned
1.3.3. cycle
1.3.4. enumerate
1.3.5. filter
1.3.6. flatten
1.3.7. fold
1.3.8. fuse
1.3.9. inspect
1.3.10. map
1.3.11. peekable
1.3.12. repeat_with
1.3.13. rev
1.3.14. scan
1.3.15. skip
1.3.16. skip_while
1.3.17. step_by
1.3.18. take
1.3.19. take_while
1.3.20. zip
1.4. consumer
1.4.1. all
1.4.2. any
1.4.3. collect
1.4.4. count
1.4.5. eq/ne/gt/lt/ge/le
1.4.6. find/position
1.4.7. first
1.4.8. fold
1.4.9. for_each
1.4.10. last
1.4.11. max/min
1.4.12. max_by/max_by_key
1.4.13. nth
1.4.14. partition
1.4.15. sum/product
1.5. trait
1.5.1. Extend
1.5.2. FromIter
1.5.3. IntoIter
Backlinks
python generator (Coroutine > python generator): 不考虑实现细节, generator 在用法上和 iterator 类似, 例如 Rust Iterator