ser*_*j.p 6 for-loop vector rust
let mut vec1 = vec![0,0,0,0];
let vec2 = vec![1,3,2,0];
for v in vec2.iter(){
vec1[v] += 1;
}
Run Code Online (Sandbox Code Playgroud)
我的例子不起作用。如何正确更改值?
您的索引位于引用后面,并且其类型必须为usize,因此请确保对其进行解构:
for &v in vec2.iter(){
vec1[v] += 1;
}
Run Code Online (Sandbox Code Playgroud)
而且为了安全起见,显式转换v为usize:
for &v in vec2.iter(){
vec1[v as usize] += 1;
}
Run Code Online (Sandbox Code Playgroud)
游乐场。