审查这个生成的重量转换辅助函数。
把每项输入解析为千克并保留顺序;返回第一个解析或溢出错误;避免中间集合,且不产生输出。
Rust
fn weights_in_grams(
rows: &[&str],
) -> Result<Vec<u32>, String> {
let parsed: Vec<u32> = rows
.iter()
.filter_map(|row| row.parse::<u32>().ok())
.collect();
let mut grams = Vec::new();
for kilograms in parsed {
let converted = kilograms * 1_000;
println!("converted {kilograms}");
grams.push(converted);
}
Ok(grams)
}
生成代码仅作示例,不代表任何特定模型