rust迭代器的position()和rposition()之间有什么区别,有什么原因吗?
所以我浏览了迭代器函数(因为它们很酷),我注意到有两个函数似乎做了完全相同的事情,除了一个函数使用rust迭代器的position()和rposition()之间有什么区别,有什么原因吗?,rust,iterator,Rust,Iterator,所以我浏览了迭代器函数(因为它们很酷),我注意到有两个函数似乎做了完全相同的事情,除了一个函数使用ExactSizeIterator 而其他人则不然 使用一个函数而不是另一个函数的用例是什么? position从开头开始,一直向前,直到找到匹配的元素并返回其位置。这不需要知道总共有多少个元素,因此Iterator就足够了 rposition从末尾开始,向后移动,直到找到匹配的元素,并返回其位置(从开头!)。因为位置是从迭代器的开头返回的(将其视为可用的切片索引),所以它需要确切地知道迭代器中有多
ExactSizeIterator
而其他人则不然
使用一个函数而不是另一个函数的用例是什么?
从开头开始,一直向前,直到找到匹配的元素并返回其位置。这不需要知道总共有多少个元素,因此position
就足够了Iterator
从末尾开始,向后移动,直到找到匹配的元素,并返回其位置(从开头!)。因为位置是从迭代器的开头返回的(将其视为可用的切片索引),所以它需要确切地知道迭代器中有多少元素,因此需要rposition
ExactSizeIterator
从开头开始,一直向前,直到找到匹配的元素并返回其位置。这不需要知道总共有多少个元素,因此position
就足够了Iterator
从末尾开始,向后移动,直到找到匹配的元素,并返回其位置(从开头!)。因为位置是从迭代器的开头返回的(将其视为可用的切片索引),所以它需要确切地知道迭代器中有多少元素,因此需要rposition
ExactSizeIterator
r
的意思!谢谢:)啊,这就是r
的意思!谢谢:)