Avatar ·

如何在 Rust 中获取数字的绝对值?

大家好!我刚从 Python 开始学习 Rust,遇到了一个看似简单的问题。在 Python 中,我习惯用 `abs(-5)` 得到 5。现在我想在 Rust 中做同样的事,但编译器报错了。 这是我的代码: ```rust fn main() { let x = -5; let y = abs(x); println!("绝对值:{}", y); } ``` 编译器说:"error[E0425]: cannot find function `abs` in this scope"。我试了 `x.abs()`,这对整数有效。但当我尝试对浮点数做同样的事时: ```rust fn main() { let a: f64 = -3.14; let b = a.abs(); println!("{}", b); } ``` 这也有效。但如果我想写一个通用函数,同时接受整数和浮点数呢?在 Python 中这很简单,但在 Rust 中我不知道怎么做。有没有什么 trait 或通用方法?还是必须为每种类型写单独的函数?感谢帮助!