Ради интереса хочу реализовать "дефрагментацию" без использования дополнительного массива, с использованием только дополнительной переменной для счёта позиции. Валидатор не принимает такой код. Не понимаю, почему? Помогите увидеть, какой случай упускаю, пожалуйста
public static void executeDefragmentation(String[] array) {

        int count = 0;

        for (int i = 0; i < array.length; i++) {
            if (array[i] != null) {
                array[count] = array[i];
                if (count != 0) {
                    array[i] = null;
                }
                count ++;
            }
        }

    }