A recursive function that prints out an array in reverse.
public class RecursiveMin {
public static void main (String [] args) {
int [] a = {4, 6, 3, 7, 2, 8};
ArrayObj ao = new ArrayObj(a);
ao.reversePrint();
}
}
class ArrayObj {
private int [] arr;
public ArrayObj(int [] a) {
// creating a local copy of the array
arr = new int[a.length];
for (int i = 0; i < a.length; ++i) {
arr[i] = a[i];
}
}
public void reversePrint() {
reversePrintHelper(0);
}
private void reversePrintHelper(int i) {
if (i == arr.length - 1) {
System.out.println(arr[i]);
} else {
reversePrintHelper(i + 1);
System.out.println(arr[i]);
}
}
}
This is an example from CSci 1211 course.