Rust中将List列表转换为字符串的六种方法


字符串连接是任何编程语言中非常基本的操作。因此,了解执行字符串连接的各种方法可能非常有益。

本文将探讨如何在 Rust 编程语言中执行字符串连接。

1、+ 运算符
在其他编程语言中,您可以使用 + 运算符来连接字符串。Rust 还提供了这种字符串连接方法,如下所示:

fn main() {

let str1 = "hello".to_string();

let str2 =
" world".to_string();

println!(
"{}", str1 + &str2);

}

在前面的例子中,我们使用to_string方法将指定的字符串转换为String类型。

然后,我们使用+运算符来连接这些字符串。请注意,我们将第二个字符串作为一个字符串片断传递。

一旦我们运行上面的程序,我们应该得到一个输出为:

$ cargo run

hello world

2、Concat!宏
Rust为我们提供了concat!()宏。这个宏将两个字符串连接成一个静态字符串。下面是一个例子:

fn main() {

let string = concat!("hello", " ", "world");

println!(
"{}", string);

}

concat!()宏将逗号分隔的字符串作为参数,并将其合并为一个静态字符串。

3、Push_str()方法
你也可以使用push_str方法来串联字符串。push_str方法将修改原始字符串。因此,原始字符串应该是一个可变的类型,如下面的例子中所示:

fn main() {

let mut str1 = “hello”.to_string();

let str2 = “ world”.to_string();

str1.push_str(&str2);

println!(“{}”, str1);

}

前面的代码应该把提供的字符串连接起来。记住,push_str方法要求原始字符串是可变的。如果你需要向字符串传递一个可变的引用,请考虑所讨论的其他方法。

4、concat()方法
如果你有一个字符串的向量,你可以通过使用concat()方法进行连接。这个方法将把向量扩展为一个单一的字符串值。

let arr = vec!["hello", " world"];

let string: String = arr.concat();

println!(
"{}", string);

前面的例子利用了数组的力量来串联字符串。你不一定要使用动态数组(向量)。你也可以使用一个数组来执行同样的操作。

5、Join方法
join方法与concat()方法非常相似。然而,它提供了在连接字符串时提供一个分隔符的能力。

let arr = ["hello", "world"];

let string: String = arr.join(
" ");

println!(
"{}", string);

前面的代码使用join方法将数组内的字符串连接起来,使用空格作为分隔符。

注意:join方法是connect方法的一个重命名版本。

6、Format!宏
另一个可以用来连接字符串的技术是format!宏。它的行为类似于concat!宏,如所示:

let str1 = "hello".to_string();

let str2 =
" world".to_string();

let full_string = format!(
"{}{}", str1, str2);

println!(
"{}", full_string);

前面的代码使用format!宏来连接字符串。

总结
在这篇文章中,我们将讨论在Rust语言中连接字符串的各种方法和技术。这些方法包括+运算符、Concat!宏,Push_st()方法,Concat()方法,Join方法,以及Format!宏。