当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Rust Iterator.min用法及代码示例


本文简要介绍rust语言中 core::iter::Iterator.min 的用法。

用法

fn min(self) -> Option<Self::Item> where    Self: Sized,    Self::Item: Ord,

返回迭代器的最小元素。

如果多个元素的最小值相同,则返回第一个元素。如果迭代器为空,则返回 None

请注意,由于 NaN 无法比较, f32 / f64 未实现 Ord 。您可以使用 Iterator::reduce 解决此问题:

assert_eq!(
    vec![2.4, f32::NAN, 1.3]
        .into_iter()
        .reduce(f32::min)
        .unwrap(),
    1.3
);

例子

基本用法:

let a = [1, 2, 3];
let b: Vec<u32> = Vec::new();

assert_eq!(a.iter().min(), Some(&1));
assert_eq!(b.iter().min(), None);

相关用法


注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 core::iter::Iterator.min。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。