object Iterator
The Iterator object provides various functions for creating specialized iterators.
- Source
- Iterator.scala
- 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
TraversableOnceandIterator, it can be useful to have a builder which operates onIterators so they can be treated uniformly along with the collections.With the advent of
TraversableOnceandIterator, it can be useful to have a builder which operates onIterators so they can be treated uniformly along with the collections. Seescala.util.Random.shufflefor 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
nevaluations 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
elemon 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,ArrayorOptionwhich are accessible in all Scala compilation units without explicit qualification or imports.Notable packages include:
scala.collectionand its sub-packages contain Scala's collections frameworkscala.collection.immutable- Immutable, sequential data-structures such asVector,List,Range,HashMaporHashSetscala.collection.mutable- Mutable, sequential data-structures such asArrayBuffer,StringBuilder,HashMaporHashSetscala.collection.concurrent- Mutable, concurrent data-structures such asTrieMapscala.collection.parallel.immutable- Immutable, parallel data-structures such asParVector,ParRange,ParHashMaporParHashSetscala.collection.parallel.mutable- Mutable, parallel data-structures such asParArray,ParHashMap,ParTrieMaporParHashSetscala.concurrent- Primitives for concurrent programming such asFuturesandPromisesscala.io- Input and output operationsscala.math- Basic math functions and additional numeric types likeBigIntandBigDecimalscala.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.Predefobject are always in scope by default.Some of these identifiers are type aliases provided as shortcuts to commonly used classes. For example,
Listis an alias forscala.collection.immutable.List.Other aliases refer to classes provided by the underlying platform. For example, on the JVM,
Stringis an alias forjava.lang.String.