如何在Rust中遍历指定的字符串数组?
在Rust中遍历数组的几种方式
你的目标数组定义如下:
const ARRAY: [&'static str; 3] = ["red", "blue", "green"];
对应Lua ipairs 的带索引遍历
如果你想和Lua写法一样同时拿到索引和元素值,可以用iter().enumerate():
for (i, v) in ARRAY.iter().enumerate() { println!("{}: {}", i, v); }
enumerate()会为每个元素生成一个包含从0开始的索引和元素引用的元组,这和Lua的ipairs行为基本一致。
只遍历元素值
如果不需要索引,直接遍历数组即可:
// 直接获取元素所有权(&'static str 复制成本极低) for v in ARRAY { println!("{}", v); } // 或者遍历元素引用(避免所有权转移,适合复杂类型) for v in ARRAY.iter() { println!("{}", v); }
补充:数组与Vec的区别
Rust里的数组是固定长度的,大小在编译时就确定;而Vec是动态数组,长度可以在运行时修改。两者都支持上述遍历方式,用法基本一致。
内容的提问来源于stack exchange,提问作者Daniel
相关产品推荐
相关产品推荐

