1. 程式人生 > >Java基礎總結--流程控制

Java基礎總結--流程控制

參與 出現 ava 整體 def 復合語句 嵌套循環 其中 進入

Java流程控制
* 順序結構--最常見的執行情況,語句按照出現的先後次序依次執行。
* 判斷結構--對條件進行判斷,執行相應的語句。有三種常見的形式
< if(判斷條件){語句;}--為真執行語句,否則不執行
< if(判斷條件){語句;}else{語句;}--註意這個結構是一個整體,只會執行一個分支,為真-if控制的語句,假-執行else控制的語句。
< if(判斷條件){語句;}else if(判斷條件){語句;}else{語句;}--註意多重條件判斷-這個結構也是一個整體,只會執行一個,滿足後不會判斷其他的分支。
註意:
if結構如果只控制一條語句可以不寫大括號,初學者最好寫上括號。
一條語句--可能是單行語句/復合語句-大括號擴起來的語句
if-else結構可以和三目運算符某種程度的替換,可以替換條件是執行後有一個結果是值。
假如一個判斷結構寫出太多條件--可能就要進行條件合並

* 局部代碼塊--定義在函數裏面,用大括號闊起來的語句組
主要作用-就是控制局部變量的生命周期,及時的是否內存

* 選擇結構--給出有限的備選路徑
基本結構:
switch(變量值){
case 值1:語句;break;
case 值n:語句;break;
default: 語句;break;(最後一個break可有可無)
}
特點:變量類型有限定--short,int,byte,char
執行開始是從最近的一個case開始,書寫順序並無要求
switch語句結束標準:遇到大括號(自然的結束)或遇到break(跳出switch語句)
註意:
< 執行流程先從最近case比較匹配後有break就跳出switch語句,若沒有break就不會判斷下面的case--會一直執行到break/default控制的語句到結束。
< 沒有一個匹配就執行dafault語句(寫最後直接結束),或會執行到break或者大括號結束。
< break對switch的執行結果影響很大,要合理的使用
<if和switch的區別
if可以對值,區間,布爾變量進行判斷
switch僅僅可以對值進行判斷,對於有限的值得判斷推薦switch-因為會把所有的備選項加載進去內存,所以會執行的比較快。

* 循環結構--其出現的目的是為了解決重復性操作,存在三種循環結構
while(條件表達式){參與循環的語句(包含循環後操作語句);}--其實和if很像,僅僅區別就是對同一條件的多次判斷
for(1初始化表達式;2循環控制語句;3循環後操作表達式){4參與循環的語句;}
for循環的執行流程是先初始化-判斷是否進入循環-執行循環體-後操作表達式(一次循環結束),其中三個表達式中第二個必須是布爾型,其余兩個並無要求;變量個數可以多個,用逗號隔開。
do{語句}while(條件表達式);沒有特別之處-就是至少會被執行一次
--如何書寫循環--
1.分析問題如何用大白話解決
2.分析要重復執行的語句-放入循環裏面
3.確定循環的控制條件
--選擇哪種循環--
1.通常確定循環的次數一般選擇for循環
2.無法確定循環次數的選擇while循環
3.循環體至少要被執行一次選擇do while循環
--循環控制方式--
1.計數器思想
2.標記變量控制循環
3.有時候需要兩種結合使用--比如求素數
--循環嵌套--記住大圈套小圈(通常一對多思想)--分析有什麽規律
--其他循環控制語句--
1.break-跳出當前循環-應用範圍(switch,循環中通常結合if使用)
註意結合if使用僅僅是控制break何時對循環起作用,在嵌套循環中跳出的是所在循環
2.continue-結束本次循環進入下次循環(使用範圍-循環中)
--註意不要用浮點數進行判斷等於,浮點數是近似的處理--

Java基礎總結--流程控制