Questa scrittura presenta una profonda comprensione dei seguenti concetti relativi alla ricorsione di Java:
Quindi iniziamo!
Cos'è la ricorsione in Java
Di solito, assistiamo a una funzione che chiama qualche altra funzione o funzioni. Tuttavia, una funzione ricorsiva si chiama ripetutamente. I frammenti di seguito donati descrivono come un metodo normale differisce da un metodo ricorsivo.
Sintassi di base della funzione normale
public void firstfunction ()Lo snippet sopra mostra come appare una normale funzione definita dall'utente i.e. Ha poche dichiarazioni (codice) e chiama una funzione denominata Secondfunction ().
Sintassi di base della funzione ricorsiva
Ora diamo un'occhiata allo snippet di seguito per capire come appare una funzione ricorsiva:
public void firstfunction ()Prendi in considerazione la figura seguente per capire come funzionerà la funzione ricorsiva di cui sopra:
La figura sopra mostra che la funzione si chiama continuamente i.e. Si verifica uno scenario di loop infinito. Ora ti stai chiedendo se la funzione si sta chiamando continuamente, come si fermerà? BENE! Dobbiamo definire i criteri di terminazione per fermare una tale funzione ad un certo punto.
Condizione di fermentazione/terminazione
Per ora, è chiaro che ci deve essere una condizione che controllerà il flusso della funzione ricorsiva. In termini programmatici, la condizione che impedisce alla funzione di chiamare se stessa viene definita il Condizioni di sosta O caso base.
La sintassi della funzione ricorsiva con la condizione di arresto sarà simile a questa:
public void functionName ()La condizione di arresto può essere qualsiasi condizione a seconda delle diverse circostanze.
Esempi di ricorsione Java
Questa sezione fornirà una comprensione dettagliata di come funziona la funzione ricorsiva con il caso di base in Java.
Esempio
Lo snippet di seguito prende un numero dall'utente e trova il fattoriale di quel numero:
Classe pubblica Classi di fabbricaNello snippet di codice sopra, la condizione IF-ELSE viene utilizzata per fermare la ricorsione quando "num" diventa uguale a "0".
public static void main (string [] args)Nel metodo principale, stiamo recuperando il numero dall'utente, verificando che il numero è valido o meno, e se il numero è valido, chiama il findFactoriale () metodo. L'intero codice genererà il seguente output:
L'output autentica la funzione ricorsiva funziona correttamente e ha calcolato correttamente il fattoriale di 6.
Conclusione
In Java, un processo in cui una funzione si chiama ancora e ancora, è chiamato a funzione/metodo ricorsivo Mentre l'intero processo è noto come ricorsione. Un caso di base/arresto deve essere definito nelle funzioni ricorsive per fermare la ricorsione ad un certo punto, la funzione non si fermerà mai e si chiama un numero illimitato di volte. Questo articolo elabora ciò che è ricorsione, la differenza tra la funzione normale e ricorsiva e come creare funzioni ricorsive in Java.