При удалении элемента из середины или начала списка, элементы с бόльшими индексами сдвигаются влево, заполняя освободившуюся позицию.
java
При удалении элемента по значению, находится первое вхождение этого элемента, и происходит аналогичный сдвиг.
java
Удаление элемента из конца списка не требует сдвига элементов. Просто уменьшается размер.
java
В любом случае, при успешном удалении элемента, логический размер списка (который возвращает метод size()) уменьшается на единицу. Массив, лежащий в основе ArrayList, физически не уменьшается сразу, но при следующем добавлении элемента может произойти перераспределение памяти (увеличение capacity), если текущая вместимость недостаточна.