有用的函数 #
range() #
返回 set 中一段区间的迭代器,可以当 C++ 中std::set::lower_bound()
或者std::set::upper_bound()
用,举例:
use std::ops::Bound::*;
let mut set = BTreeSet::new();
set.insert(1);
set.insert(2);
set.insert(3);
assert_eq!(set.range(2..).next(), Some(&2));
assert_eq!(set.range((Excluded(2), Unbounded)).next(), Some(&3));
assert_eq!(set.range(..2).last(), Some(&1));
assert_eq!(set.range(..=2).last(), Some(&2));