我有这个代码:
let mut myFile = readFile();
let reader = BufReader::new(myFile);
let tasks = reader.lines()
.map(|line| line.expect("Couldn't read line"));
当我在"任务"上停留时,我看到了这个:
let tasks: Map<Lines<BufReader<File>>, fn(Result<String>) -> String>
查看代码:
reader.lines()
在文件中的行上提供迭代器.
map()接受一个函数/闭包(在每行执行一些操作并返回另一个值).
因此,我期望返回值map()
是另一个表示值列表的数据 struct .
为什么是Map
?