Что эквивалентно оператору объединения над вектором строк?
Я не смог найти эквивалент Rust для оператора "join" над вектором String
s. У меня есть Vec<String>
, и я хотел бы присоединиться к ним как к единственному String
:
let string_list = vec!["Foo".to_string(),"Bar".to_string()];
let joined = something::join(string_list,"-");
assert_eq!("Foo-Bar", joined);
Ответы
Ответ 1
В Rust 1.3.0 и более поздних версиях SliceConcatExt::join
доступно:
fn main() {
let string_list = vec!["Foo".to_string(),"Bar".to_string()];
let joined = string_list.join("-");
assert_eq!("Foo-Bar", joined);
}
До 1.3.0 вы можете использовать SliceConcatExt::connect
:
let joined = string_list.connect("-");
Ответ 2
Как упоминалось Wilfred, SliceConcatExt::connect
устарел с версии 1.3.0 в пользу SliceConcatExt::join
:
let joined = string_list.join("-");