I have a java ArrayList to which I add 5 objects.
If I iterate over the list and print them out, then iterate over the list and print them out again.
Will the retrieval order in these 2 cases be the same? (I know it may be different from the insertion order)
Yes, assuming you haven’t modified the list in-between. From http://docs.oracle.com/javase/6/docs/api/java/util/List.html:
A bit vague, perhaps, but in other portions of that page, this term is defined: