Because it is the user interface. I don't mind changing the implementation details behind the scenes, but I'd like to avoid inconveniencing others if possible. It's also more code- a single for loop has to be replaced by 2 statements, 1 to create the iterator, and the while loop.