object Iterator
The Iterator
object provides various functions for creating specialized iterators.
- Source
- Iterator.scala
- Version
2.8
- Since
2.8
- Alphabetic
- By Inheritance
- Iterator
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
implicit
def
IteratorCanBuildFrom[A]: BufferedCanBuildFrom[A, Iterator]
With the advent of
TraversableOnce
andIterator
, it can be useful to have a builder which operates onIterator
s so they can be treated uniformly along with the collections.With the advent of
TraversableOnce
andIterator
, it can be useful to have a builder which operates onIterator
s so they can be treated uniformly along with the collections. Seescala.util.Random.shuffle
for an example. -
def
apply[A](elems: A*): Iterator[A]
Creates an iterator with given elements.
Creates an iterator with given elements.
- elems
The elements returned one-by-one from the iterator
- returns
An iterator which produces the given elements on the first calls to
next
, and which has no further elements.
-
def
continually[A](elem: ⇒ A): Iterator[A]
Creates an infinite-length iterator returning the results of evaluating an expression.
Creates an infinite-length iterator returning the results of evaluating an expression. The expression is recomputed for every element.
- elem
the element computation.
- returns
the iterator containing an infinite number of results of evaluating
elem
.
-
val
empty: Iterator[Nothing]
The iterator which produces no values.
-
def
fill[A](len: Int)(elem: ⇒ A): Iterator[A]
Creates iterator that produces the results of some element computation a number of times.
Creates iterator that produces the results of some element computation a number of times.
- len
the number of elements returned by the iterator.
- elem
the element computation
- returns
An iterator that produces the results of
n
evaluations ofelem
.
-
def
from(start: Int, step: Int): Iterator[Int]
Creates an infinite-length iterator returning values equally spaced apart.
Creates an infinite-length iterator returning values equally spaced apart.
- start
the start value of the iterator
- step
the increment between successive values
- returns
the iterator producing the infinite sequence of values
start, start + 1 * step, start + 2 * step, ...
-
def
from(start: Int): Iterator[Int]
Creates an infinite-length iterator which returns successive values from some start value.
Creates an infinite-length iterator which returns successive values from some start value.
- start
the start value of the iterator
- returns
the iterator producing the infinite sequence of values
start, start + 1, start + 2, ...
-
def
iterate[T](start: T)(f: (T) ⇒ T): Iterator[T]
Creates an infinite iterator that repeatedly applies a given function to the previous result.
Creates an infinite iterator that repeatedly applies a given function to the previous result.
- start
the start value of the iterator
- f
the function that's repeatedly applied
- returns
the iterator producing the infinite sequence of values
start, f(start), f(f(start)), ...
-
def
range(start: Int, end: Int, step: Int): Iterator[Int]
An iterator producing equally spaced values in some integer interval.
An iterator producing equally spaced values in some integer interval.
- start
the start value of the iterator
- end
the end value of the iterator (the first value NOT returned)
- step
the increment value of the iterator (must be positive or negative)
- returns
the iterator producing values
start, start + step, ...
up to, but excludingend
-
def
range(start: Int, end: Int): Iterator[Int]
Creates nn iterator returning successive values in some integer interval.
Creates nn iterator returning successive values in some integer interval.
- start
the start value of the iterator
- end
the end value of the iterator (the first value NOT returned)
- returns
the iterator producing values
start, start + 1, ..., end - 1
-
def
single[A](elem: A): Iterator[A]
Creates an iterator which produces a single element.
Creates an iterator which produces a single element. Note: Equivalent, but more efficient than Iterator(elem)
- elem
the element
- returns
An iterator which produces
elem
on the first call tonext
, and which has no further elements.
-
def
tabulate[A](end: Int)(f: (Int) ⇒ A): Iterator[A]
Creates an iterator producing the values of a given function over a range of integer values starting from 0.
Creates an iterator producing the values of a given function over a range of integer values starting from 0.
- end
The number of elements returned by the iterator
- f
The function computing element values
- returns
An iterator that produces the values
f(0), ..., f(n -1)
.
This is the documentation for the Scala standard library.
Package structure
The scala package contains core types like
Int
,Float
,Array
orOption
which are accessible in all Scala compilation units without explicit qualification or imports.Notable packages include:
scala.collection
and its sub-packages contain Scala's collections frameworkscala.collection.immutable
- Immutable, sequential data-structures such asVector
,List
,Range
,HashMap
orHashSet
scala.collection.mutable
- Mutable, sequential data-structures such asArrayBuffer
,StringBuilder
,HashMap
orHashSet
scala.collection.concurrent
- Mutable, concurrent data-structures such asTrieMap
scala.collection.parallel.immutable
- Immutable, parallel data-structures such asParVector
,ParRange
,ParHashMap
orParHashSet
scala.collection.parallel.mutable
- Mutable, parallel data-structures such asParArray
,ParHashMap
,ParTrieMap
orParHashSet
scala.concurrent
- Primitives for concurrent programming such asFutures
andPromises
scala.io
- Input and output operationsscala.math
- Basic math functions and additional numeric types likeBigInt
andBigDecimal
scala.sys
- Interaction with other processes and the operating systemscala.util.matching
- Regular expressionsOther packages exist. See the complete list on the right.
Additional parts of the standard library are shipped as separate libraries. These include:
scala.reflect
- Scala's reflection API (scala-reflect.jar)scala.xml
- XML parsing, manipulation, and serialization (scala-xml.jar)scala.swing
- A convenient wrapper around Java's GUI framework called Swing (scala-swing.jar)scala.util.parsing
- Parser combinators (scala-parser-combinators.jar)Automatic imports
Identifiers in the scala package and the
scala.Predef
object are always in scope by default.Some of these identifiers are type aliases provided as shortcuts to commonly used classes. For example,
List
is an alias forscala.collection.immutable.List
.Other aliases refer to classes provided by the underlying platform. For example, on the JVM,
String
is an alias forjava.lang.String
.