以下是一个示例代码,用于遍历Vec<&str>
并在满足条件时累积值到一个变量中:
fn main() {
let vec = vec!["1", "2", "3", "4", "5"];
let mut sum = 0;
for &item in vec.iter() {
if let Ok(num) = item.parse::() {
sum += num;
}
}
println!("Sum: {}", sum);
}
在这个示例中,我们首先创建了一个包含字符串切片的向量vec
。然后,我们声明一个可变的变量sum
,用于存储满足条件的值的累积和。
接下来,我们使用for
循环遍历vec
中的每个元素。在循环的每次迭代中,我们使用iter()
方法获取向量的迭代器,并使用&
来解引用每个元素,因为我们需要处理字符串切片。然后,我们使用parse()
方法将字符串转换为i32
类型。如果转换成功,则将其加到sum
变量中。
最后,我们打印出累积和的值。
运行这段代码,将输出Sum: 15
,因为字符串"1"、"2"、"3"、"4"和"5"都能成功转换为整数,并且它们的和是15。