示例程序:
fn main() {let s = String::from("yuyoubei");let bytes = s.as_bytes();for (i, &item) in bytes.iter().enumerate() {println!("{} {}", i, item as char);}}
输出结果:
0 y1 u2 y3 o4 u5 b6 e7 i
这段代码首先使用 as_bytes 将 String 转为字节数组。
接着,我们使用 iter 方法创建了一个可以遍历字节数组的迭代器。iter 方法会依次返回集合中的每一个元素。
之后的 enumerate 则将 iter 的每个输出作为元素逐一封装在对应的元组中返回。元组的第一个元素是索引,第二个元素是指向集合中字节的引用,使用 enumerate 可以较方便地获得迭代索引。
