In informatica , un metodo ricorsivo chiamata è un metodo che si definisce durante il processo di calcolo. Il linguaggio di programmazione Java supporta la ricorsione come parte della sua sintassi di programmazione . Mentre potrebbe essere difficile per i principianti programmatori Java di cogliere , scrivere metodi ricorsivi consente spesso concetti matematici per essere espresse chiaramente nel programma. Per questo motivo , è importante per i programmatori Java per capire come usare la ricorsione e le sue limitazioni . Istruzioni 
 1 
 stabilire se il processo di calcolo da eseguire si presta a ricorsione o meno. E 'importante che il processo di calcolo nel metodo può essere ridotto a una chiamata ripetuta a se stesso . 
 
 Uno dei calcoli ricorsione popolari è il processo di determinare il fattoriale di un numero. Un fattoriale di un numero N è il risultato della moltiplicazione di tutti i numeri da 1 fino a N stesso . Ad esempio, utilizzando la moltiplicazione diretta : 
 
 fattoriale ( 3) = 3 * 2 * 1 = 6 
 
 Tuttavia, lo stesso risultato si ottiene quando visto in modo ricorsivo : 
 
 fattoriale ( 3 ) = 3 * fattoriale (2) = 3 * 2 * fattoriale (1) = 3 * 2 * 1 = 6 
 
 noti che ogni passaggio successivo si riferisce al processo stesso , ma in termini più semplici . 
 
 2 
 dichiarare il metodo Java che svolgerà il calcolo ricorsivo . Un metodo di solito ha almeno il modificatore , il tipo di ritorno , i nomi dei metodi e la lista dei parametri corrispondenti . Il nome del metodo normalmente inizia con una parola verbale minuscolo. Ad esempio , la riga seguente definisce un metodo chiamato " fatto ()" che accetta un valore di numero intero di n e restituisce il suo fattoriale : 
 
 int fact ( int n ) { } 
 < br > 3 
 Assicurarsi che nel corpo del metodo ricorsivo , il calcolo viene eseguito mediante una chiamata a se stesso . Assicurarsi che ci sia una condizione di terminazione della chiamata ricorsiva e , in caso contrario il metodo verrà eseguito a tempo indeterminato senza fermarsi. Ad esempio, la seguente riga calcola il factoria di un particolare numero n da sé successivamente chiamando per eseguire lo stesso calcolo con un valore più semplice di n - 1 . 
 
 Int fact ( int n ) { 
 < p > int result; 
 
 if ( n == 1) return 1; 
 risultato 
 = fact (n - 1) * n ; 
 
 return result ; 
 < p > Quando n - 1 è uguale a 1 , viene restituito il valore di 1 } 
 
 . Questa è la condizione di terminazione del calcolo ricorsivo . 
 4 
 Chiamare il metodo ricorsivo per testarlo. Ad esempio , la riga seguente chiama il "fatto ( ) " metodo passando un valore di 3 per stampare sulla console : 
 
 System.out.println ( "Il fattoriale di 3 è" + f.fact ( 3) ) ; 
 
 Assicurarsi che il messaggio ' il fattoriale di 3 è 6' è stampato sullo schermo 
 
 .