public class Main { public static void main(String[] args) { Object[] arr1 = new Object[10000000]; Object[] arr = arr1; for (int i = 0; i < 200; i++) { arr[0] = new Object[10000000]; // try 30000000 arr = (Object[]) arr[0]; System.out.printf("i is %d\n", i); } } } public class Main { private static int factorial(int n) { if (n == 1) return 1; else return n * factorial(n + 1); // return n*factorial(n-1); } public static void main(String[] args) { int f = factorial(4); System.out.println(f); } }