与迭代器项目匹配的最惯用方法是什么?例如,如果我们采用命令行参数,在其中一个项目上使用模式匹配的最佳方法是什么?这就是我正在做的事情,我并不是100%确定为什么as_ref()
是必需的以及为什么&args[0]
不起作用:
let args: Vec<String> = env::args().skip(1).collect();
match args[0].as_ref() {...}
答案 0 :(得分:1)
由于!search:xx-xx
返回迭代器(env::args()
),因此可以像使用任何其他迭代器一样使用它。如果您想要匹配给定项目一次,最简单的方法是:
Args