一、break語句和continue語句
在任何循環語句的主體部分,均可用break控制循環的流程。break用于強行退出循環,不執行循環中剩餘的語句
continue 語句用在循環語句體中,用于終止某次循環過程,即跳過循環體中尚未執行的語句,接着進行下一次是否執行循環的判定
二、方法
方法就是一段用來完成特定功能的代碼片段,類似于其它語言的函數。
方法用于定義該類或該類的執行個體的行為特征和功能實作。 方法是類和對象行為特征的抽象。方法很類似于面向過程中的函數。面向過程中,函數是最基本機關,整個程式由一個個函數調用組成。面向對象中,整個程式的基本機關是類,方法是從屬于類和對象的。
格式:修飾符1 修飾符2 …] 傳回值類型 方法名(形式參數清單){
Java語句;… … …
}
對象名.方法名(實參清單)
方法的詳細說明
1. 形式參數:在方法聲明時用于接收外界傳入的資料。
2. 實參:調用方法時實際傳給方法的資料。
3. 傳回值:方法在執行完畢後返還給調用它的環境的資料。
4. 傳回值類型:事先約定的傳回值的資料類型,如無傳回值,必須顯示指定為為void
注意事項:
1. 實參的數目、資料類型和次序必須和所調用的方法聲明的形式參數清單比對。
2. return 語句終止方法的運作并指定要傳回的資料。
3. Java中進行方法調用中傳遞參數時,遵循值傳遞的原則(傳遞的都是資料的副本):
4. 基本類型傳遞的是該資料值的copy值。
5. 引用類型傳遞的是該對象引用的copy值,但指向的是同一個對象
三、方法重載
方法的重載是指一個類中可以定義多個方法名相同,但參數不同的方法。 調用時,會根據不同的參數自動比對對應的方法
方法重載的條件:1.不同的含義:形參類型、形參個數、形參順序不同
2.隻有傳回值不同不構成方法的重載
如:
1
int a(String str){}與 void a(String str){}
不構成方法重載
3.隻有形參的名稱不同,不構成方法的重載
四、遞歸結構
優點:遞歸結構可以把複雜的問題逐漸簡單化,本質是“自己調用自己”
缺點:占記憶體,速度慢
任何使用遞歸的方法都可以使用疊代解決,當遞歸方法可以更自然地反映問題,并且
易于了解和調試,并且不強調效率問題時,可以采用遞歸;
在要求高性能的情況下,盡量避免使用遞歸。
遞歸舉例 :
public class Test22 {
public static void main(String[] args) {
long d1 = System.currentTimeMillis();
System.out.printf("%d階乘的結果:%s%n", 10, factorial(10));
long d2 = System.currentTimeMillis();
System.out.printf("遞歸費時:%s%n", d2-d1); //耗時:32ms
}
static long factorial(int n){
if(n==1){//遞歸頭
return 1;
}else{//遞歸體
return n*factorial(n-1);//n! = n * (n-1)!
}
}
}