You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Rust语言中如何将字符串"Hi bro"转换为字符数组?

Rust字符串转字符数组的正确实现

你当前代码里用collect::<String>()是把字符迭代器重新拼接成了字符串,这和你要的字符数组完全不是一回事。

正确的做法是把迭代器收集到Vec<char>中,Rust里的Vec<char>就对应你想要的字符数组:

let str = "Hi bro";
// 方式1:显式标注变量类型
let some_str_arr: Vec<char> = str.chars().collect();

// 方式2:用 turbofish 语法指定目标类型
let some_str_arr = str.chars().collect::<Vec<char>>();

简单解释:str.chars()会生成一个遍历字符串中所有Unicode字符的迭代器,collect方法可以把这个迭代器的元素收集到实现了FromIterator trait的容器里,Vec<char>正好满足这个要求,最终得到的就是类似['H', 'i', ' ', 'b', 'r', 'o']的结构。

内容的提问来源于stack exchange,提问作者MubleBuble

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 05:21:15