Quiero clonar varias veces un arreglo hasta llenar la memoria y obtener el numero de copias que se hicieron pero no c como realizar esto. Pero lo corro y nunca se me llena la memoria alguien que me ayude o me diga donde esta el error.
 
public class Memoria {
 
    int[] arreglo = new int[1000];
    int contador = 0;
 
    public void llenar() {
        long tiempoInicio = System.currentTimeMillis();
        for (int i = 0; i < 1000; i++) {
            arreglo[i] = i + 1;
        }
        for (;;) {
            try {
                arreglo.clone();
                ++contador;
 
            } catch (final java.lang.OutOfMemoryError e) {
                long totalTiempo = System.currentTimeMillis() - tiempoInicio;
                JOptionPane.showMessageDialog(null, "El tiempo de demora es :" + totalTiempo + " miliseg"+ "creando "+contador+" arreglos");
            }
 
        }
    }
} 
  
 

