dos 退出for迴圈 學習Rust 迴圈

2021-10-13 17:58:44 字數 1761 閱讀 8211

rust 語言是一種高效、可靠的通用高階語言。其高效不僅限於開發效率,它的執行效率也是令人稱讚的,是一種少有的兼顧開發效率和執行效率的語言。

rust 除了靈活的條件語句以外,迴圈結構的設計也十分成熟。這一點作為身經百戰的開發者應該能感覺出來。

while 迴圈

while 迴圈是最典型的條件語句迴圈:

例項

fn main() ", number);        number += 1;    }    println!("exit");}
執行結果:

123exit
rust 語言到此教程編撰之日還沒有 do-while 的用法,但是 do 被規定為保留字,也許以後的版本中會用到。

在 c 語言中 for 迴圈使用三元語句控制迴圈,但是 rust 中沒有這種用法,需要用 while 迴圈來代替:

c 語言

int i;for (i = 0; i < 10; i++) rustlet mut i = 0;while i < 10
for 迴圈for 迴圈是最常用的迴圈結構,常用來遍歷乙個線性資料據結構(比如陣列)。for 迴圈遍歷陣列:

例項

fn main() ", i);    }}
執行結果:

值為 : 10值為 : 20值為 : 30值為 : 40值為 : 50
這個程式中的 for 迴圈完成了對陣列 a 的遍歷。a.iter() 代表 a 的迭代器(iterator),在學習有關於物件的章節以前不做贅述。

當然,for 迴圈其實是可以通過下標來訪問陣列的:

例項

fn main() ] = {}", i, a[i]);    }}
執行結果:

a[0] = 10a[1] = 20a[2] = 30a[3] = 40a[4] = 50
loop 迴圈身經百戰的開發者一定遇到過幾次這樣的情況:某個迴圈無法在開頭和結尾判斷是否繼續進行迴圈,必須在迴圈體中間某處控制迴圈的進行。如果遇到這種情況,我們經常會在乙個 while (true) 迴圈體裡實現中途退出迴圈的操作。

rust 語言有原生的無限迴圈結構 —— loop:

例項

fn main()         println!("'{}'", ch);        i += 1;    }}
執行結果:

'r' 'u' 'n'
loop 迴圈可以通過 break 關鍵字類似於 return 一樣使整個迴圈退出並給予外部乙個返回值。這是乙個十分巧妙的設計,因為 loop 這樣的迴圈常被用來當作查詢工具使用,如果找到了某個東西當然要將這個結果交出去:

例項

fn main()         i += 1;    };    println!(" 'o' 的索引為 {}", location);}
執行結果:

'o' 的索引為 3
學習rust 迴圈 | 《linux就該這麼學》 (linuxprobe.com)

退出當前迴圈和退出迴圈

場景 當通過excel一次性匯入多條資料 向資料庫一次性插入多條資料 就要讀取 解析excel,並迴圈插入每條資料,當每插入一條資料前都要判斷此條資料是否已經存在,如果存在用continue退出當前迴圈,進入下一次迴圈。例如 break 跳出迴圈 for int i 0 i 10 i if i 2 ...

break退出迴圈

用 for 迴圈或者 while 迴圈時,如果要在迴圈體內直接退出迴圈,可以使用 break 語句。比如計算1至100的整數和,我們用while來實現 sum 0 x 1 while true sum sum x x x 1 if x 100 break print sum咋一看,while tru...

退出多層迴圈

方法一 正常情況下不報錯,三層迴圈,會執行5的三次方 raise 丟擲異常物件 固定用法 try中丟擲乙個異常,try裡所有的 都不會被執行。class getoutofloop exception pass try for i in range 5 for j in range 5 for k i...