Avatar ·

如何在Rust中正确拼接字符串:新手完整指南

大家好!我刚开始学习Rust,遇到了一个让我非常困惑的问题。我需要将多个字符串拼接成一个,但不知道如何正确操作,总是遇到编译错误。 以下是我的代码示例: ```rust fn main() { let hello = "Hello"; let world = "world"; let message = hello + " " + world; println!("{}", message); } ``` 编译器报错:`cannot add `&str` to `&str``。我尝试了不同的方法:使用 `format!`、`push_str`,但还是搞不清楚。在其他语言中,比如Python或JavaScript,我只需写 `"Hello" + " " + "world"` 就能工作。而在Rust中有这么多不同的类型:`String`、`&str`、`String::from`、`to_string()`。什么时候该用哪个? 我需要拼接的不仅是字面量,还有来自不同地方的变量:有些已经是 `String`,有些是字符串切片。请告诉我如何在Rust中正确且高效地拼接字符串?