Java語法 1.Java流程式控制制語句 1.概述 在一個程式執行的過程中,各條語句的執行順序對程式的結果是有直接影響的。也就是說程式的流程對運行結果有直接的影響。所以,我們必須清楚每條語句的執行流程。而且,很多時候我們要通過控制語句的執行順序來實現我們要完成的功能。 2.流程式控制制語句的分類 1)順序 ...
Java語法
1.Java流程式控制制語句
1.概述
在一個程式執行的過程中,各條語句的執行順序對程式的結果是有直接影響的。也就是說程式的流程對運行結果有直接的影響。所以,我們必須清楚每條語句的執行流程。而且,很多時候我們要通過控制語句的執行順序來實現我們要完成的功能。
2.流程式控制制語句的分類
1)順序結構
是程式中最簡單最基本的流程式控制制,沒有特定的語法結構,按照代碼的先後順序,依次執行,程式中大多數的代碼都是這樣執行的。總的來說:寫在前面的先執行,寫在後面的後執行。
2)選擇結構
也被稱為分支結構。選擇結構有特定的語法規則,代碼要執行具體的邏輯運算進行判斷,邏輯運算的結果有兩個,所以產生選擇,按照不同的選擇執行不同的代碼。Java語言提供了兩種選擇結構語句:if語句 switch語句
1>if語句
if語句有三種格式:
2>switch語句
格式:
註意事項:
1.小心case穿透,所以最好與break連用。
2.多個case可以連用,如下的示例代碼也可以這樣寫(當i=1,2,18都會輸出18):
3)迴圈結構
迴圈語句可以在滿足迴圈條件的情況下,反覆執行某一段代碼,這段被重覆執行的代碼被稱為迴圈體語句,當反覆執行這個迴圈體時,需要在合適的時候把迴圈判斷條件修改為false,從而結束迴圈,否則迴圈將一直執行下去,形成死迴圈。
for(…;…;…){……}
while(…){……}先判斷再執行大括弧裡面的內容,然後再判斷是否要繼續執行
do{……} whille(…); 先執行大括弧裡面的內容再判斷是否要繼續執行
4)流程跳轉語句
比如說,我想在某個迴圈知道到某一步的時候就結束,Java就提供了break,continue和return來實現控制語句的跳轉和中斷。
(1)break 中斷
(2)continue 繼續
(3)return 返回
return關鍵字不是為了跳轉出迴圈體,更常用的功能是結束一個方法,也就是退出一個方法。跳轉到上層調用的方法。
2.方法
1.格式
java的方法類似於其他語言的函數,是一段用來完成特定功能的代碼片段,聲明格式:
[修飾符1 修飾符2 …] 返回值類型 方法名 (形式參數列表) {
java語句
}
2.格式分析
3.註意事項
形式參數:在方法被調用時用於接受外界輸入的數據(也就是上面格式分析中的“參數類型”和“參數名”的統稱)
實參:調用方法時實際傳給方法的數據
返回值:方法在執行完畢後返回給調用它的環境的數據
返回值類型:實現約定的返回值的數據類型,如無返回值,必需給出返回值類型void
java語言中調用方法:對象名.方法名(實參列表)
實參的數目、數據類型和次序必需和所調用方法聲明的形參列表匹配
return語句終止方法的運行並指定要返回的數據
java中進行函數調用傳遞參數時,遵循值傳遞的原則:
基本數據類型傳遞的是該數據“值”本身,引用數據類型傳遞的是對象的引用(在記憶體中即:傳的是記憶體地址),而不是對象本身
例子中的方法1,前面定義的方法1、2、3的數據類型為void, 所以方法中不能有return返回值,方法4中因為有return返回值,所以前面必需定義為返回值的類型,也就是m4前面那個int
4.遞歸調用
概述:遞歸調用是指在方法執行過程中出現該方法本身的調用
3.練習
1)水仙花數
所謂“水仙花數”是指一個三位數,其各位數字立方和等於該數 本身。例如:153是一個“水仙花數”,因為153=1的三次方+5的三次方+3的三次方
2)遞歸求階乘的和
階乘==》如:5!表示5的階乘:5*4*3*2*1