[英]What is the difference between len() and count()?
在下面的代码中,无论是使用len
还是count
,我都得到相同的结果:
fn main() {
let vector = [0, 1, 2];
assert_eq!(vector.iter().count(), vector.iter().len());
}
len
似乎更通用,因为我也可以这样做:
assert_eq!(vector.len(), 3);
那么,两者之间有什么区别...为什么要使用一个而不是另一个?
返回向量中的元素数。
返回迭代器的确切长度。
计算此迭代器中的元素数。
因此,当它们返回相同的值时, count
实际上会计算元素。 请注意, len
仅适用于ExactSizeIterator; 因此,如果该值是惰性检索的,则可能无法获得总长度,您需要对其进行显式计数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.