Also if you don't need to force a copy you can use Iterators.unmodifiableIterator() to possibly achieve the same result.