言語的流程控制供給了對程序步驟的基本辦法。
三大流程控制語句:次序、選擇、循環(huán)
復(fù)合結(jié)構(gòu)
復(fù)合結(jié)構(gòu)是以一個區(qū)塊為單位的,由”{“開端”}”結(jié)束。復(fù)合語句會為局部變量創(chuàng)建一個效果域,該效果域會成為程序的一部分。在這個效果域中變量可以被創(chuàng)建運用,假設(shè)這個變量在這個效果域外運用,會發(fā)作程序錯誤。復(fù)合結(jié)構(gòu)內(nèi)可以嵌套多個復(fù)合結(jié)構(gòu)。
判別結(jié)構(gòu)
判別結(jié)構(gòu)會依據(jù)不同的條件效果實行不同的代碼塊。
If結(jié)構(gòu)
if結(jié)構(gòu)中的條件結(jié)構(gòu)是一個布爾值,在條件滿足也就是true時實行大括號中的代碼塊,假設(shè)條件不滿足就是效果為false時則不實行大括號中的代碼塊,直接實行if結(jié)構(gòu)后的代碼。
在if結(jié)構(gòu)中的代碼量很少的情況我們可以省掉大括號。不是很主張運用,這樣簡單連你自己都分不清楚是不是if結(jié)構(gòu)中的語句更甭說其他程序員的后期保護。
If-else結(jié)構(gòu)
if-else結(jié)構(gòu)同理假設(shè)條件滿足實行1,否則實行代碼塊2。
Demo
我們可以檢驗編寫一個小程序。
依據(jù)相應(yīng)的考試效果輸出響應(yīng)的評價,效果大于等于90分輸出優(yōu),大于等于80且小于等于90輸出良,大于等于60且小于80輸出中,小于60則輸出不及格。
看到標題或許會疑問,不論是if結(jié)構(gòu)或許if-else結(jié)構(gòu)都需求繁瑣而且代碼量很大才干結(jié)束。接下來看看代碼:
其間的Scannerinput=newScanner(Systrm.in);是什么呢,他是一個輸入語句他的姓名是input,只需求記住,我后邊的文章會詳細說明。
這段代碼的實行進程是:
開端提示輸入效果,然后他會更具你輸入的效果進行判別,只能輸入double類型的數(shù)據(jù)。
這也不是if結(jié)構(gòu)或許if-else結(jié)構(gòu)啊,慢慢往下看!
多重if
當(dāng)我們要一同判別多個條件是就需求這個多重if-else結(jié)構(gòu)了。
嵌套if
斷章取義嵌套if結(jié)構(gòu)就是將if結(jié)構(gòu)套在if結(jié)構(gòu)里邊。
Demo
上面的那個小Demo也可以用嵌套if結(jié)構(gòu)結(jié)束。
會很復(fù)雜,代碼量也會相對程度的加大一點。
所以針對不同的問題選擇不同的解決方案很重要。
switch結(jié)構(gòu)
switch結(jié)構(gòu)是一種多選一的選擇結(jié)構(gòu)。簡單說一下switch是什么樣的實行形式:
先計算switch表達式的值,假設(shè)值與case后邊的常量表達式相同,就實行case后邊的語句直到遇到break語句,否則繼續(xù)實行下一個case中的語句一貫到有break語句。
要是沒有常量表達式與表達式的值相同,那么直接實行default語句后邊的語句然后結(jié)束結(jié)構(gòu)實行結(jié)構(gòu)之后的語句。
沒有default語句而且沒有常量表達式與表達式的值相一同switch結(jié)構(gòu)不會做任何處理直接實行結(jié)構(gòu)之后的代碼。
循環(huán)結(jié)構(gòu)
循環(huán)結(jié)構(gòu)的循環(huán)方法是用一個條件來判別是否反復(fù)的實行循環(huán)結(jié)構(gòu)中的語句。
while循環(huán)
依據(jù)循環(huán)條件判別是否繼續(xù)實行語句。
Demo
這是一個簡單的1~10相加的循環(huán)。
首先判別sum是否小于等于10,滿足條件則實行while結(jié)構(gòu)的代碼塊。
num+=sum;è
num=num+sum;è
num=0+1;è
sum+1;è
0+1=1=sum;
然后再次進行判別sum是否小于等于10,滿足條件繼續(xù)實行while結(jié)構(gòu)中的代碼塊,直到sum不滿足條件結(jié)構(gòu)結(jié)束實行輸出語句。
那么假設(shè)條件一貫滿足,那就會進入死循環(huán),一貫循環(huán)實行while結(jié)構(gòu)中的代碼塊,直到關(guān)閉程序。死循環(huán)是個很嚴重的問題,在真實的開發(fā)中這種循環(huán)會讓你的電腦死機或許你好幾天的勞動就會化為灰燼!
do-while循環(huán)
do-while結(jié)構(gòu)和while結(jié)構(gòu)的區(qū)別:
while結(jié)構(gòu):先判別在實行
do-while結(jié)構(gòu):先實行在判別
也就是說do-while結(jié)構(gòu)不論條件滿不滿足先實行一遍其間的代碼塊,然后再判別是否繼續(xù)實行下一次循環(huán)。
for循環(huán)
for結(jié)構(gòu)是最常用的循環(huán)結(jié)構(gòu),用來重復(fù)實行其間的代碼塊。
表達式1是初始化表達式用于結(jié)束變量的初始化,表達式2用于控制循環(huán)條件,表達式3是循環(huán)操作后表達式可以改動循環(huán)條件。
Demo
1~10求和其有用for循環(huán)更便當(dāng)。
會長時間不間斷跟新我所學(xué)到的知識。
錯誤期望糾正。
廣州天河區(qū)珠江新城富力盈力大廈北塔2706
020-38013166(網(wǎng)站咨詢專線)
400-001-5281 (售后服務(wù)熱線)
深圳市坂田十二橡樹莊園F1-7棟
Site/ http://www.szciya.com
E-mail/ itciya@vip.163.com
品牌服務(wù)專線:400-001-5281
長沙市天心區(qū)芙蓉中路三段398號新時空大廈5樓
聯(lián)系電話/ (+86 0731)88282200
品牌服務(wù)專線/ 400-966-8830
旗下運營網(wǎng)站:
Copyright ? 2016 廣州思洋文化傳播有限公司,保留所有權(quán)利。 粵ICP備09033321號