您好,登錄后才能下訂單哦!
好程序員大數據教程分享大數據之流程控制,程序在運行的時候, 對代碼執行的先后順序, 稱作程序的執行結構. 在Java中, 程序的執行結構分為三種:
順序結構: 代碼從上往下逐行執行, 是程序執行的基本結構
分支結構: 代碼執行到某一個節點遇到多個分支, 選擇其中的一個分支執行, 其他的分支都不執行
循環結構: 某一個代碼段需要重復的執行
程序默認采用的是順序結構, 我們也可以通過一些語句來修改程序的執行結構, 這樣的語句叫做流程控制語句, 按照修改的執行結構不同, 可以分為 分支流程控制 和 循環流程控制
1.3.1 分支流程控制--if
基礎語法
if (condition) {
// 代碼段1
}
else {
// 代碼段2
}
邏輯: condition是一個boolean類型的變量, 或者一個boolean結果的表達式. 如果condition的值為true, 則代碼段1執行, 否則, 代碼段2執行
進階
if (condition1) {
// 代碼段1
}
else if (condition2) {
// 代碼段2
}
else {
// 代碼段3
}
邏輯: 先判斷condition1, 如果condition1成立, 執行代碼段1; 如果condition1不成立, 再判斷condition2, 如果condition2成立, 執行代碼段2, 否則執行代碼段3
特殊說明
在if-else語句中, 如果某一個代碼段中只有一句語句, 則大括號可以省略; 但是從語法的規范來說, 一般情況下, 我們是不省略的
1.3.2 分支流程控制--switch
基礎語法
switch (variable) {
case value1:
case value2:
...
default:
}
邏輯: variable是一個變量, switch語句捕獲這個變量的值; 如果變量的值和某一個case后面的值相同了, 就會執行這個case后面的語句; 如果變量的值沒有和任意的一個value相同, 則執行default后面的值
注意事項
在switch-case語句中有穿透性, 即: 如果variable的值和某一個value匹配了, 會執行從這個case開始, 一直到switch語句結束, 后面所有的代碼, 且跳過后面的case匹配; 為了避免穿透, 可以使用關鍵字break來跳出switch語句
1.3.3 循環流程控制--while
基礎語法
while (condition) {
// 循環體
}
邏輯: 每次循環線判斷condition, 如果為true, 循環體執行, 然后再判斷condition; 直到condition為false, 循環結束
do-while
do {
// 循環體
} while (condition);
邏輯: 先執行一次循環體, 然后再判斷循環條件是否成立
關鍵字 break, continue 與 循環標簽
break
用在循環中, 表示跳出循環; 如果用在多層循環中, 只會跳出當前的一層循環
continue
用在循環中, 表示繼續循環, 從continue開始, 后面所有的代碼不執行, 直接進入下次循環
循環標簽
一般用在多層循環中, 可以給每一個循環都添加一個標簽; 可以配合break語句, 直接結束指定的循環. 或者配合continue語句, 直接終止指定循環的執行, 立即進入下次循環
1.3.4 循環流程控制--for
基礎語法
for (循環起點; 循環條件; 循環步長) {
循環體
}
邏輯:
先執行循環起點, 一般用與定義一個控制循環的變量, 或者給這個變量一個初始值
再判斷循環條件是否成立, 如果循環條件成立, 執行循環體, 再執行循環步長, 然后重新判斷循環條件
如果循環條件不成立, 循環結束
特殊說明
關于語法省略
for循環的小括號中由三部分組成, 這三個部分都可以省略:
循環起點: 變量的定義可以放在循環外
循環條件: 如果省略, 默認是true, 可以在循環體中控制跳出循環
循環步長: 可以在循環體中控制步長
關于大括號
如果循環體中只有一句語句, 循環體大括號可以省略; 但是出于規范, 一般我們也不省略
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。