diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/library/scala/collection/Iterator.scala | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/library/scala/collection/Iterator.scala b/src/library/scala/collection/Iterator.scala index 660cc5a42a..0115cc154c 100644 --- a/src/library/scala/collection/Iterator.scala +++ b/src/library/scala/collection/Iterator.scala @@ -320,7 +320,14 @@ trait Iterator[+A] extends TraversableOnce[A] { * it omits the first `n` values. * @note Reuse: $consumesAndProducesIterator */ - def drop(n: Int): Iterator[A] = slice(n, Int.MaxValue) + def drop(n: Int): Iterator[A] = { + var j = 0 + while (j < n && this.hasNext) { + this.next + j += 1 + } + this + } /** Creates an iterator returning an interval of the values produced by this iterator. * |