JAVA基礎學習-方法遞迴
阿新 • • 發佈:2021-05-16
方法遞迴
構造的遞迴方法中通常由兩個部分組成:遞迴條件和基線條件。
基線條件是控制遞迴過程停止的條件,如果沒有基線條件的話,遞迴過程可能一直在重複呼叫直到棧記憶體溢位。
要理解方法遞迴需要理解棧這個資料結構,最好的方法是畫出棧中的方法呼叫的入棧出棧的具體情況,會對方法遞迴理解更好。
以下是計算1~4數字求和的方法遞迴的使用舉例:
/* 方法的遞迴使用 */ public class RecursionTest02 { public static void main(String[] args){ //1~4的求和 int n = 4; int result = sum(n); System.out.println(result); } public static int sum(int n){ //邊界條件 if (n == 1) { return 1; } //遞迴條件 return n + sum(n-1); } }
畫出對應的棧中方法呼叫示意圖:
通常能使用迴圈語句能解決的簡單問題,不使用方法遞迴。