Generally it's not recommended to modify a collection while it's iterated and most JDK collection implementations don't support it. This may sometimes lead to a ConcurrentModificationException and it could be the source of incorrect or unspecified behaviors in the code.
This rule raises an issue when a method modifies the size of a collection, while the same collection is iterated.