你知道任何饱和函数吗?使数字适合给定范围?

Do you know any saturation function? To make number fit to given range?

在 Rust 中寻找饱和函数。
这里我称之为fit_to_range(range).

  let input:i64= something;
  let saturated:64= input.fit_to_range(7..=4000);
  assert!((7..=4000).contains(saturated));

您可以使用 min()max()

  let input: i64 = 8456;
  let saturated: i64 = input.max(7).min(4000);
  assert!((7..=4000).contains(saturated));

你要找的是 Ord trait 中定义的 clamp 函数,它由 i64 实现。 例如:

let input: i64 = 5000;
let saturated = input.clamp(7, 4000);
assert!((7..=4000).contains(&saturated));

Documentation of the clamp function