如何遍历第二个数字

som*_*hpc 5 loops rust

阅读文档时,我注意到一句话:“ Rust没有C样式的循环。”。因此,我想知道如何使循环等效for(i = 0; i < 10; i += 2) { }

我能想到的方式是:

for i in 0..10 {
    if i % 2 == 0 {
        //Do stuff
    }
}
Run Code Online (Sandbox Code Playgroud)

甚至:

let i = 0;
loop {
    if i < 10 {
        //Do stuff
        i += 2;
    } else {
        break;
    }
}
Run Code Online (Sandbox Code Playgroud)

但是我不确定这是最好的方法,尤其是因为它确实很冗长。有没有更好的办法?我猜想它将与迭代器,但我不确定如何做到这一点。

小智 5

现在,这可以通过step_by函数在std中实现

for i in (0..10).step_by(2) {
    // Do stuff
}
Run Code Online (Sandbox Code Playgroud)