如何在 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 或通用方法?还是必须为每种类型写单独的函数?感谢帮助!