Java Recursividad
La recursividad o una función recursiva es aquella función que se ejecuta a sí misma ósea es función se llama a sí misma, funciona como un bucle, para detener a que se llame a sí misma tenemos que poner una condición sino se convertiría en un bucle infinito.
Podemos realizar un sistema que realice una cuenta regresiva de un numero en este caso le enviamos 10 para que realice una cuenta regresiva de 10 a 0, y cuando llegue a 0 se deje de llamarse a sí misma.
public class Main { public static void main(String[] args) { //Llamar a una función cuentaRegresiva(10); } //Definición de una función static void cuentaRegresiva(int numero){ numero --; if (numero > 0){ System.out.println(numero); //Llamar la misma función cuentaRegresiva(numero); }else { System.out.println("LLego hasta 0"); } } } //Salida es: //9 //8 //7 //6 //5 //4 //3 //2 //1 //LLego hasta 0
Ejemplo
En este ejemplo crearemos un sistema que pueda sacar factorial de un número, en este ejemplo le enviaremos el numero 5 entonces el sistema tiene que sacar factorial de numero 5 que es 120 utilizando recursividad.
public class Main { public static void main(String[] args) { //Llamar a una función System.out.println(factorial(5)); } //Definición de una función static int factorial(int numero){ if (numero > 1){ numero = numero * factorial(numero-1); } return numero; } } //Salida es: //120