let n =5;for i in0..n {print!("{}",i)}// 0~n-1for i in0..=n {print!("{}",i)}// 0~nlet a:Vector<usize>=vec![0,1,2,3,4];for i in a.iter(){print!("{}",i)}for i in a[0..n].iter(){print!("{}",i)}for i in a[0..=n-1].iter(){print!("{}",i)}for i in0..n {print!("{}",a[i])}
1
2
3
4
5
6
7
8
如果需要特殊退出条件,需要使用while自己控制变量的变化。
rust还有一个特殊的循环:loop {}
loop的特殊之处在于它默认等价于while True,即直接进入循环,且期待内部break;
break右边可以接表达式,作为loop{}模块的返回值,这经常用户循环查找答案的场景。
以下摘自https://www.runoob.com/rust/rust-loop.html
fnmain(){let s =['R','U','N','O','O','B'];letmut i =0;let location =loop{let ch = s[i];if ch =='O'{break i;}
i +=1;};println!(" \'O\' 的索引为 {}", location);