gpt4 book ai didi

rust - len() 和 count() 有什么区别?

转载 作者:行者123 更新时间:2023-11-29 07:46:29 24 4
gpt4 key购买 nike

在下面的代码中,无论使用 len 还是 count,我都会得到相同的结果:

fn main() {
let vector = [0, 1, 2];
assert_eq!(vector.iter().count(), vector.iter().len());
}

len 似乎更通用,因为我也可以这样做:

assert_eq!(vector.len(), 3);

那么,两者之间有什么区别...为什么要使用一个而不是另一个?

最佳答案

vector.len()

Returns the number of elements in the vector.

iter.len()

Return the exact length of the iterator.

iter.count()

Counts the number of elements in this iterator.

因此当它们返回相同的值时,count 将实际计算元素。请注意,len 仅适用于 ExactSizeIterator;因此,如果该值是延迟检索的,则总长度可能不可用,您需要明确计算它。

关于rust - len() 和 count() 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29500666/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com