Hello !
If you mean foreach loop(by your
word "for-loop") then foreach loop internally uses iterator() method.
You hear it right. Foreach loop uses internally iterator() method of collection you provide.
Recall that every class that implements Collection interface also implements Iterable interface.
However using iterator() you can remove elements while iterating by using foreach loop you can't.
If you mean for loop based on index then you
can add,remove,replace elements.
To know internal life of ArrayList please cover my
Internal life of ArrayList tutorial