Recursive method adalah kemampuan method memanggil method dirinya sendiri. Supaya lebih jelas pertama kita buat koding tanpa menggunakan recursive method, kita buat kelas bernama RecursiveMethod untuk menghitung faktorial 6. Perhatikan sintaks berikut ini:
public class RecursiveMethod { public static void main(String[] args) { System.out.println(faktorial(6)); //memanggil method faktorial, diisikan 6 untuk cari faktorial 6 } //deklarasi method bernama faktorial static int faktorial(int angkaFaktorial){ var hasil = 1; for(var angka = 1; angka <= angkaFaktorial; angka++){ //perulangan dari 1 sampai dengan angkaFaktorial - 1 hasil *= angka; //artinya hasil = hasil * angka } return hasil; //nilai dari hasil diberikan ke method faktorial } }
Jika kita run maka hasilnya adalah:
720 //ini adalah factorial 6
Sekarang kita coba menggunakan recursive method, perhatikan sintaks di bawah ini:
public class RecursiveMethod { public static void main(String[] args) { System.out.println(faktorial(6)); //memanggil method faktorial, diisikan 6 untuk cari faktorial 6 } //deklarasi method bernama faktorial static int faktorial(int angkaFaktorial){ if(angkaFaktorial == 1){ //blok ini dijalankan jika angkaFaktorial bernilai 1. return 1; }else{ //blok ini dijalankan jika angkaFaktorial tidak bernilai 1 //misal kita beri 5 pada angkaFaktorial, maka disini akan dilakukan operasi 5 * 4, begitu seterusnya return angkaFaktorial * faktorial(angkaFaktorial - 1); } } }
Jika kita run maka hasilnya adalah:
720 //merupakan factorial dari 6
PREVIOUS: Method Overloading
NEXT: Scope dan Komentar