trait IndexedSeq[+A] extends Seq[A] with collection.IndexedSeq[A] with IndexedSeqOps[A, IndexedSeq, IndexedSeq[A]]
Base trait for immutable indexed sequences that have efficient apply
and length
- Alphabetic
- By Inheritance
- IndexedSeq
- IndexedSeqOps
- IndexedSeq
- IndexedSeqOps
- Seq
- SeqOps
- Seq
- SeqOps
- Equals
- ArrayLike
- Iterable
- Iterable
- IterableOps
- IterableOnce
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
class
WithFilter
extends AnyRef
A template trait that contains just the
map
,flatMap
,foreach
andwithFilter
methods of traitIterable
.A template trait that contains just the
map
,flatMap
,foreach
andwithFilter
methods of traitIterable
.- Definition Classes
- IterableOps
Abstract Value Members
-
abstract
def
apply(i: Int): A
- Definition Classes
- ArrayLike
- Annotations
- @throws( ... )
-
abstract
def
fromSpecificIterable(coll: collection.Iterable[A]): IndexedSeq[A]
- Attributes
- protected[this]
- Definition Classes
- IterableOps
-
abstract
def
iterableFactory: IterableFactory[IndexedSeq]
- Definition Classes
- IterableOps
-
abstract
def
iterator(): Iterator[A]
Iterator can be used only once
Iterator can be used only once
- Definition Classes
- IterableOnce
-
abstract
def
length: Int
- Definition Classes
- ArrayLike
-
abstract
def
newSpecificBuilder(): Builder[A, IndexedSeq[A]]
- returns
a strict builder for the same collection type. Note that in the case of lazy collections (e.g. View or immutable.LazyList), it is possible to implement this method but the resulting
Builder
will break laziness. As a consequence, operations should preferably be implemented on top of views rather than builders.
- Attributes
- protected[this]
- Definition Classes
- IterableOps
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
++[B >: A](suffix: IterableOnce[B]): IndexedSeq[B]
Alias for
concat
Alias for
concat
- Definition Classes
- IterableOps
- Annotations
- @inline()
-
final
def
++:[B >: A](prefix: collection.Iterable[B]): IndexedSeq[B]
Alias for
prependAll
Alias for
prependAll
- Definition Classes
- IterableOps
- Annotations
- @inline()
-
final
def
+:[B >: A](elem: B): IndexedSeq[B]
Alias for
prepend
.Alias for
prepend
.Note that :-ending operators are right associative (see example). A mnemonic for
+:
vs.:+
is: the COLon goes on the COLlection side.- Definition Classes
- SeqOps
- Annotations
- @inline()
-
final
def
:+[B >: A](elem: B): IndexedSeq[B]
Alias for
append
Alias for
append
Note that :-ending operators are right associative (see example). A mnemonic for
+:
vs.:+
is: the COLon goes on the COLlection side.- Definition Classes
- SeqOps
- Annotations
- @inline()
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
append[B >: A](elem: B): IndexedSeq[B]
A copy of this $coll with an element appended.
A copy of this $coll with an element appended.
- B
the element type of the returned $coll.
- elem
the appended element
- returns
a new $coll consisting of all elements of this $coll followed by
value
.
- Definition Classes
- SeqOps
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
- def c: IndexedSeq.this.type
-
def
canEqual(that: Any): Boolean
Method called from equality methods, so that user-defined subclasses can refuse to be equal to other collections of the same kind.
Method called from equality methods, so that user-defined subclasses can refuse to be equal to other collections of the same kind.
- that
The object with which this $coll should be compared
- returns
true
, if this $coll can possibly equalthat
,false
otherwise. The test takes into consideration only the run-time types of objects but ignores their elements.
- Definition Classes
- SeqOps → Equals
-
def
className: String
The class name of this collection.
The class name of this collection. To be used for converting to string. Collections generally print like this:
<className>(elem_1, ..., elem_n)
- Definition Classes
- IterableOps
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
coll: IndexedSeq.this.type
The collection itself
The collection itself
- Attributes
- protected[this]
- Definition Classes
- Iterable → IterableOps
-
def
collect[B](pf: PartialFunction[A, B]): IndexedSeq[B]
- Definition Classes
- IterableOps
-
def
combinations(n: Int): Iterator[IndexedSeq[A]]
Iterates over combinations.
Iterates over combinations. A _combination_ of length
n
is a subsequence of the original sequence, with the elements taken in order. Thus,"xy"
and"yy"
are both length-2 combinations of"xyy"
, but"yx"
is not. If there is more than one way to generate the same subsequence, only one will be returned.For example,
"xyyy"
has three different ways to generate"xy"
depending on whether the first, second, or third"y"
is selected. However, since all are identical, only one will be chosen. Which of the three will be taken is an implementation detail that is not defined.- returns
An Iterator which traverses the possible n-element combinations of this $coll.
- Definition Classes
- SeqOps
"abbbc".combinations(2) = Iterator(ab, ac, bb, bc)
Example: -
def
concat[B >: A](suffix: IterableOnce[B]): IndexedSeq[B]
Returns a new $coll containing the elements from the left hand operand followed by the elements from the right hand operand.
Returns a new $coll containing the elements from the left hand operand followed by the elements from the right hand operand. The element type of the $coll is the most specific superclass encompassing the element types of the two operands.
- B
the element type of the returned collection.
- suffix
the traversable to append.
- returns
a new collection of type
CC[B]
which contains all elements of this $coll followed by all elements ofsuffix
.
- Definition Classes
- IterableOps
-
def
contains[A1 >: A](elem: A1): Boolean
Tests whether this $coll contains a given value as an element.
Tests whether this $coll contains a given value as an element. $mayNotTerminateInf
- elem
the element to test.
- returns
true
if this $coll has an element that is equal (as determined by==
) toelem
,false
otherwise.
- Definition Classes
- SeqOps
-
def
containsSlice[B](that: collection.Seq[B]): Boolean
Tests whether this $coll contains a given sequence as a slice.
Tests whether this $coll contains a given sequence as a slice. $mayNotTerminateInf
- that
the sequence to test
- returns
true
if this $coll contains a slice with the same elements asthat
, otherwisefalse
.
- Definition Classes
- SeqOps
-
def
copyToArray[B >: A](xs: Array[B], start: Int = 0): xs.type
Copy all elements of this collection to array
xs
, starting atstart
.Copy all elements of this collection to array
xs
, starting atstart
.- Definition Classes
- IterableOps
-
def
count(p: (A) ⇒ Boolean): Int
Counts the number of elements in the $coll which satisfy a predicate.
Counts the number of elements in the $coll which satisfy a predicate.
- p
the predicate used to test elements.
- returns
the number of elements satisfying the predicate
p
.
- Definition Classes
- IterableOps
-
def
drop(n: Int): IndexedSeq[A]
The rest of the collection without its
n
first elements.The rest of the collection without its
n
first elements. For linear, immutable collections this should avoid making a copy.- Definition Classes
- IterableOps
-
def
dropRight(n: Int): IndexedSeq[A]
The rest of the collection without its
n
last elements.The rest of the collection without its
n
last elements. For linear, immutable collections this should avoid making a copy.- Definition Classes
- IndexedSeqOps → IterableOps
-
def
dropWhile(p: (A) ⇒ Boolean): IndexedSeq[A]
Skips longest sequence of elements of this iterator which satisfy given predicate
p
, and returns an iterator of the remaining elements.Skips longest sequence of elements of this iterator which satisfy given predicate
p
, and returns an iterator of the remaining elements.- p
the predicate used to skip elements.
- returns
an iterator consisting of the remaining elements
- Definition Classes
- IterableOps
- Note
Reuse: $consumesAndProducesIterator
-
def
endsWith[B >: A](that: collection.Seq[B]): Boolean
Tests whether this $coll ends with the given sequence.
Tests whether this $coll ends with the given sequence. $willNotTerminateInf
- that
the sequence to test
- returns
true
if this $coll hasthat
as a suffix,false
otherwise.
- Definition Classes
- SeqOps
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(o: Any): Boolean
- Definition Classes
- SeqOps → Equals → Any
-
def
exists(p: (A) ⇒ Boolean): Boolean
Tests whether a predicate holds for at least one element of this $coll.
Tests whether a predicate holds for at least one element of this $coll.
$mayNotTerminateInf
- p
the predicate used to test elements.
- returns
true
if the given predicatep
is satisfied by at least one element of this $coll, otherwisefalse
- Definition Classes
- IterableOps
-
def
filter(pred: (A) ⇒ Boolean): IndexedSeq[A]
Selects all elements of this $coll which satisfy a predicate.
Selects all elements of this $coll which satisfy a predicate.
- pred
the predicate used to test elements.
- returns
a new $coll consisting of all elements of this $coll that satisfy the given predicate
pred
. Their order may not be preserved.
- Definition Classes
- IterableOps
-
def
filterNot(pred: (A) ⇒ Boolean): IndexedSeq[A]
Selects all elements of this $coll which do not satisfy a predicate.
Selects all elements of this $coll which do not satisfy a predicate.
- pred
the predicate used to test elements.
- returns
a new $coll consisting of all elements of this $coll that do not satisfy the given predicate
pred
. Their order may not be preserved.
- Definition Classes
- IterableOps
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
find(p: (A) ⇒ Boolean): Option[A]
Finds the first element of the $coll satisfying a predicate, if any.
Finds the first element of the $coll satisfying a predicate, if any.
$mayNotTerminateInf $orderDependent
- p
the predicate used to test elements.
- returns
an option value containing the first element in the $coll that satisfies
p
, orNone
if none exists.
- Definition Classes
- IterableOps
-
def
flatMap[B](f: (A) ⇒ IterableOnce[B]): IndexedSeq[B]
Flatmap
Flatmap
- Definition Classes
- IterableOps
-
def
flatten[B](implicit ev: (A) ⇒ IterableOnce[B]): IndexedSeq[B]
- Definition Classes
- IterableOps
-
def
foldLeft[B](z: B)(op: (B, A) ⇒ B): B
Fold left
Fold left
- Definition Classes
- IterableOps
-
def
foldRight[B](z: B)(op: (A, B) ⇒ B): B
Fold right
Fold right
- Definition Classes
- IterableOps
-
def
forall(p: (A) ⇒ Boolean): Boolean
Tests whether a predicate holds for all elements of this $coll.
Tests whether a predicate holds for all elements of this $coll.
$mayNotTerminateInf
- p
the predicate used to test elements.
- returns
true
if this $coll is empty or the given predicatep
holds for all elements of this $coll, otherwisefalse
.
- Definition Classes
- IterableOps
-
def
foreach[U](f: (A) ⇒ U): Unit
Apply
f
to each element for its side effects Note: [U] parameter needed to help scalac's type inference.Apply
f
to each element for its side effects Note: [U] parameter needed to help scalac's type inference.- Definition Classes
- IterableOps
-
def
fromIterable[E](it: collection.Iterable[E]): IndexedSeq[E]
- Attributes
- protected[this]
- Definition Classes
- IterableOps
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
groupBy[K](f: (A) ⇒ K): Map[K, IndexedSeq[A]]
Partitions this $coll into a map of ${coll}s according to some discriminator function.
Partitions this $coll into a map of ${coll}s according to some discriminator function.
Note: When applied to a view or a lazy collection it will always force the elements.
- K
the type of keys returned by the discriminator function.
- f
the discriminator function.
- returns
A map from keys to ${coll}s such that the following invariant holds:
(xs groupBy f)(k) = xs filter (x => f(x) == k)
That is, every key
k
is bound to a $coll of those elementsx
for whichf(x)
equalsk
.
- Definition Classes
- IterableOps
-
def
grouped(size: Int): Iterator[IndexedSeq[A]]
Partitions elements in fixed size ${coll}s.
Partitions elements in fixed size ${coll}s.
- size
the number of elements per group
- returns
An iterator producing ${coll}s of size
size
, except the last will be less than sizesize
if the elements don't divide evenly.
- Definition Classes
- IterableOps
- See also
scala.collection.Iterator, method
grouped
-
def
hashCode(): Int
- Definition Classes
- SeqOps → Any
-
def
head: A
The first element of the collection.
The first element of the collection.
- Definition Classes
- IterableOps
-
def
indexOf[B >: A](elem: B, from: Int = 0): Int
Finds index of first occurrence of some value in this $coll after or at some start index.
Finds index of first occurrence of some value in this $coll after or at some start index.
- B
the type of the element
elem
.- elem
the element value to search for.
- from
the start index
- returns
the index
>= from
of the first element of this $coll that is equal (as determined by==
) toelem
, or-1
, if none exists.
- Definition Classes
- SeqOps
-
def
indexOfSlice[B >: A](that: collection.Seq[B], from: Int = 0): Int
Finds first index after or at a start index where this $coll contains a given sequence as a slice.
Finds first index after or at a start index where this $coll contains a given sequence as a slice. $mayNotTerminateInf
- that
the sequence to test
- from
the start index
- returns
the first index
>= from
such that the elements of this $coll starting at this index match the elements of sequencethat
, or-1
of no such subsequence exists.
- Definition Classes
- SeqOps
-
def
indexWhere(p: (A) ⇒ Boolean, from: Int = 0): Int
Finds index of the first element satisfying some predicate after or at some start index.
Finds index of the first element satisfying some predicate after or at some start index.
$mayNotTerminateInf
- p
the predicate used to test elements.
- from
the start index
- returns
the index
>= from
of the first element of this $coll that satisfies the predicatep
, or-1
, if none exists.
- Definition Classes
- SeqOps
-
def
indices: Range
Produces the range of all indices of this sequence.
Produces the range of all indices of this sequence.
- returns
a
Range
value from0
to one less than the length of this $coll.
- Definition Classes
- SeqOps
-
def
init: IndexedSeq[A]
The initial part of the collection without its last element.
The initial part of the collection without its last element.
- Definition Classes
- IterableOps
-
def
isEmpty: Boolean
Is the collection empty?
Is the collection empty?
- Definition Classes
- IterableOps
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
knownSize: Int
The number of elements in this collection, if it can be cheaply computed, -1 otherwise.
The number of elements in this collection, if it can be cheaply computed, -1 otherwise. Cheaply usually means: Not requiring a collection traversal.
- Definition Classes
- IterableOps
-
def
last: A
Selects the last element.
Selects the last element. $orderDependent
- returns
The last element of this $coll.
- Definition Classes
- IterableOps
- Exceptions thrown
NoSuchElementException
If the $coll is empty.
-
def
lastIndexOf[B >: A](elem: B, end: Int = length - 1): Int
Finds index of last occurrence of some value in this $coll before or at a given end index.
Finds index of last occurrence of some value in this $coll before or at a given end index.
- B
the type of the element
elem
.- elem
the element value to search for.
- end
the end index.
- returns
the index
<= end
of the last element of this $coll that is equal (as determined by==
) toelem
, or-1
, if none exists.
- Definition Classes
- SeqOps
-
def
lastIndexOfSlice[B >: A](that: collection.Seq[B], end: Int = length - 1): Int
Finds last index before or at a given end index where this $coll contains a given sequence as a slice.
Finds last index before or at a given end index where this $coll contains a given sequence as a slice.
- that
the sequence to test
- end
the end index
- returns
the last index
<= end
such that the elements of this $coll starting at this index match the elements of sequencethat
, or-1
of no such subsequence exists.
- Definition Classes
- SeqOps
-
def
lastIndexWhere(p: (A) ⇒ Boolean, end: Int = length - 1): Int
Finds index of last element satisfying some predicate before or at given end index.
Finds index of last element satisfying some predicate before or at given end index.
- p
the predicate used to test elements.
- returns
the index
<= end
of the last element of this $coll that satisfies the predicatep
, or-1
, if none exists.
- Definition Classes
- SeqOps
-
def
lastOption: Option[A]
Optionally selects the last element.
Optionally selects the last element. $orderDependent
- returns
the last element of this $coll$ if it is nonempty,
None
if it is empty.
- Definition Classes
- IterableOps
-
def
map[B](f: (A) ⇒ B): IndexedSeq[B]
Builds a new collection by applying a function to all elements of this $coll.
Builds a new collection by applying a function to all elements of this $coll.
- B
the element type of the returned collection.
- f
the function to apply to each element.
- returns
a new $coll resulting from applying the given function
f
to each element of this $coll and collecting the results.
- Definition Classes
- IterableOps
-
def
max: A
[use case] Finds the largest element.
[use case]Finds the largest element.
- returns
the largest element of this $coll.
- Definition Classes
- IterableOps
Full Signaturedef max[B >: A](implicit ord: Ordering[B]): A
-
def
maxBy[B](f: (A) ⇒ B): A
[use case] Finds the first element which yields the largest value measured by function f.
[use case]Finds the first element which yields the largest value measured by function f.
- B
The result type of the function f.
- f
The measuring function.
- returns
the first element of this $coll with the largest value measured by function f.
- Definition Classes
- IterableOps
Full Signaturedef maxBy[B](f: (A) ⇒ B)(implicit cmp: Ordering[B]): A
-
def
min: A
[use case] Finds the smallest element.
[use case]Finds the smallest element.
- returns
the smallest element of this $coll
- Definition Classes
- IterableOps
Full Signaturedef min[B >: A](implicit ord: Ordering[B]): A
-
def
minBy[B](f: (A) ⇒ B): A
[use case] Finds the first element which yields the smallest value measured by function f.
[use case]Finds the first element which yields the smallest value measured by function f.
- B
The result type of the function f.
- f
The measuring function.
- returns
the first element of this $coll with the smallest value measured by function f.
- Definition Classes
- IterableOps
Full Signaturedef minBy[B](f: (A) ⇒ B)(implicit cmp: Ordering[B]): A
-
def
mkString: String
- Definition Classes
- IterableOps
-
def
mkString(sep: String): String
- Definition Classes
- IterableOps
-
def
mkString(start: String, sep: String, end: String): String
A string showing all elements of this collection, separated by string
sep
.A string showing all elements of this collection, separated by string
sep
.- Definition Classes
- IterableOps
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
nonEmpty: Boolean
Is the collection not empty?
Is the collection not empty?
- Definition Classes
- IterableOps
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
def
padTo[B >: A](len: Int, elem: B): IndexedSeq[B]
A copy of this $coll with an element value appended until a given target length is reached.
A copy of this $coll with an element value appended until a given target length is reached.
- B
the element type of the returned $coll.
- len
the target length
- elem
the padding value
- returns
a new collection of type
$Coll
consisting of all elements of this $coll followed by the minimal number of occurrences ofelem
so that the resulting collection has a length of at leastlen
.
- Definition Classes
- SeqOps
-
def
partition(p: (A) ⇒ Boolean): (IndexedSeq[A], IndexedSeq[A])
A pair of, first, all elements that satisfy prediacte
p
and, second, all elements that do not.A pair of, first, all elements that satisfy prediacte
p
and, second, all elements that do not. Interesting because it splits a collection in two.The default implementation provided here needs to traverse the collection twice. Strict collections have an overridden version of
partition
inBuildable
, which requires only a single traversal.- Definition Classes
- IterableOps
-
def
permutations: Iterator[IndexedSeq[A]]
Iterates over distinct permutations.
Iterates over distinct permutations.
- returns
An Iterator which traverses the distinct permutations of this $coll.
- Definition Classes
- SeqOps
"abb".permutations = Iterator(abb, bab, bba)
Example: -
def
prepend[B >: A](elem: B): IndexedSeq[B]
A copy of the $coll with an element prepended.
A copy of the $coll with an element prepended.
- B
the element type of the returned $coll.
- elem
the prepended element
- returns
a new $coll consisting of
value
followed by all elements of this $coll.
- Definition Classes
- SeqOps
-
def
prependAll[B](that: <error>): <error>
[use case] As with
++
, returns a new collection containing the elements from the left operand followed by the elements from the right operand.[use case]As with
++
, returns a new collection containing the elements from the left operand followed by the elements from the right operand.It differs from
++
in that the right operand determines the type of the resulting collection rather than the left one. Mnemonic: the COLon is on the side of the new COLlection type.Example:
scala> val x = List(1) x: List[Int] = List(1) scala> val y = Vector(2) y: scala.collection.immutable.Vector[Int] = Vector(2) scala> val z = x ++: y z: scala.collection.immutable.Vector[Int] = Vector(1, 2)
- B
the element type of the returned collection.
- returns
a new $coll which contains all elements of
prefix
followed by all the elements of this $coll.
- Definition Classes
- IterableOps
Full Signaturedef prependAll[B >: A](prefix: collection.Iterable[B]): IndexedSeq[B]
-
def
product: A
[use case] Multiplies up the elements of this collection.
[use case]Multiplies up the elements of this collection.
- returns
the product of all elements in this $coll of numbers of type
Int
. Instead ofInt
, any other typeT
with an implicitNumeric[T]
implementation can be used as element type of the $coll and as result type ofproduct
. Examples of such types are:Long
,Float
,Double
,BigInt
.
- Definition Classes
- IterableOps
Full Signaturedef product[B >: A](implicit num: Numeric[B]): B
-
def
reduce[B >: A](op: (B, B) ⇒ B): B
Reduces the elements of this $coll using the specified associative binary operator.
Reduces the elements of this $coll using the specified associative binary operator.
$undefinedorder
- B
A type parameter for the binary operator, a supertype of
A
.- op
A binary operator that must be associative.
- returns
The result of applying reduce operator
op
between all the elements if the $coll is nonempty.
- Definition Classes
- IterableOps
- Exceptions thrown
UnsupportedOperationException
if this $coll is empty.
-
def
reduceLeft[B >: A](op: (B, A) ⇒ B): B
Applies a binary operator to all elements of this $coll, going left to right.
Applies a binary operator to all elements of this $coll, going left to right. $willNotTerminateInf $orderDependentFold
- B
the result type of the binary operator.
- op
the binary operator.
- returns
the result of inserting
op
between consecutive elements of this $coll, going left to right:op( op( ... op(x_1, x_2) ..., x_{n-1}), x_n)
where
x1, ..., xn
are the elements of this $coll.
- Definition Classes
- IterableOps
- Exceptions thrown
UnsupportedOperationException
if this $coll is empty.
-
def
reduceLeftOption[B >: A](op: (B, A) ⇒ B): Option[B]
Optionally applies a binary operator to all elements of this $coll, going left to right.
Optionally applies a binary operator to all elements of this $coll, going left to right. $willNotTerminateInf $orderDependentFold
- B
the result type of the binary operator.
- op
the binary operator.
- returns
an option value containing the result of
reduceLeft(op)
if this $coll is nonempty,None
otherwise.
- Definition Classes
- IterableOps
-
def
reduceOption[B >: A](op: (B, B) ⇒ B): Option[B]
Reduces the elements of this $coll, if any, using the specified associative binary operator.
Reduces the elements of this $coll, if any, using the specified associative binary operator.
$undefinedorder
- B
A type parameter for the binary operator, a supertype of
A
.- op
A binary operator that must be associative.
- returns
An option value containing result of applying reduce operator
op
between all the elements if the collection is nonempty, andNone
otherwise.
- Definition Classes
- IterableOps
-
def
reduceRight[B >: A](op: (A, B) ⇒ B): B
Applies a binary operator to all elements of this $coll, going right to left.
Applies a binary operator to all elements of this $coll, going right to left. $willNotTerminateInf $orderDependentFold
- B
the result type of the binary operator.
- op
the binary operator.
- returns
the result of inserting
op
between consecutive elements of this $coll, going right to left:op(x_1, op(x_2, ..., op(x_{n-1}, x_n)...))
where
x1, ..., xn
are the elements of this $coll.
- Definition Classes
- IterableOps
- Exceptions thrown
UnsupportedOperationException
if this $coll is empty.
-
def
reduceRightOption[B >: A](op: (A, B) ⇒ B): Option[B]
Optionally applies a binary operator to all elements of this $coll, going right to left.
Optionally applies a binary operator to all elements of this $coll, going right to left. $willNotTerminateInf $orderDependentFold
- B
the result type of the binary operator.
- op
the binary operator.
- returns
an option value containing the result of
reduceRight(op)
if this $coll is nonempty,None
otherwise.
- Definition Classes
- IterableOps
-
def
reverse: IndexedSeq[A]
Returns new $coll with elements in reversed order.
Returns new $coll with elements in reversed order.
$willNotTerminateInf
- returns
A new $coll with all elements of this $coll in reversed order.
- Definition Classes
- SeqOps
-
def
reverseIterator(): Iterator[A]
An iterator yielding elements in reversed order.
An iterator yielding elements in reversed order.
$willNotTerminateInf
Note:
xs.reverseIterator
is the same asxs.reverse.iterator
but might be more efficient.- returns
an iterator yielding the elements of this $coll in reversed order
- Definition Classes
- SeqOps
-
def
reversed: collection.Iterable[A]
- Attributes
- protected[this]
- Definition Classes
- IndexedSeqOps → IterableOps
-
def
sameElements[B >: A](that: IterableOnce[B]): Boolean
Are the elements of this collection the same (and in the same order) as those of
that
?Are the elements of this collection the same (and in the same order) as those of
that
?- Definition Classes
- SeqOps
-
def
scan[B >: A](z: B)(op: (B, B) ⇒ B): IndexedSeq[B]
Computes a prefix scan of the elements of the collection.
Computes a prefix scan of the elements of the collection.
Note: The neutral element
z
may be applied more than once.- B
element type of the resulting collection
- z
neutral element for the operator
op
- op
the associative operator for the scan
- returns
a new $coll containing the prefix scan of the elements in this $coll
- Definition Classes
- IterableOps
-
def
scanLeft[B](z: B)(op: (B, A) ⇒ B): IndexedSeq[B]
Produces a collection containing cumulative results of applying the operator going left to right.
Produces a collection containing cumulative results of applying the operator going left to right.
$willNotTerminateInf $orderDependent
- B
the type of the elements in the resulting collection
- z
the initial value
- op
the binary operator applied to the intermediate result and the element
- returns
collection with intermediate results
- Definition Classes
- IterableOps
-
def
scanRight[B](z: B)(op: (A, B) ⇒ B): IndexedSeq[B]
Produces a collection containing cumulative results of applying the operator going right to left.
Produces a collection containing cumulative results of applying the operator going right to left. The head of the collection is the last cumulative result. $willNotTerminateInf $orderDependent
Example:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
- B
the type of the elements in the resulting collection
- z
the initial value
- op
the binary operator applied to the intermediate result and the element
- returns
collection with intermediate results
- Definition Classes
- IterableOps
- def seq: IndexedSeq.this.type
-
def
size: Int
The number of elements in this collection.
The number of elements in this collection. Does not terminate for infinite collections.
- Definition Classes
- IterableOps
-
def
slice(from: Int, until: Int): IndexedSeq[A]
Selects an interval of elements.
Selects an interval of elements. The returned collection is made up of all elements
x
which satisfy the invariant:from <= indexOf(x) < until
$orderDependent
- from
the lowest index to include from this $coll.
- until
the lowest index to EXCLUDE from this $coll.
- returns
a $coll containing the elements greater than or equal to index
from
extending up to (but not including) indexuntil
of this $coll.
- Definition Classes
- IterableOps
-
def
sliding(size: Int, step: Int): Iterator[IndexedSeq[A]]
Groups elements in fixed size blocks by passing a "sliding window" over them (as opposed to partitioning them, as is done in grouped.)
Groups elements in fixed size blocks by passing a "sliding window" over them (as opposed to partitioning them, as is done in grouped.)
- size
the number of elements per group
- step
the distance between the first elements of successive groups
- returns
An iterator producing ${coll}s of size
size
, except the last element (which may be the only element) will be truncated if there are fewer thansize
elements remaining to be grouped.
- Definition Classes
- IterableOps
- See also
scala.collection.Iterator, method
sliding
-
def
sliding(size: Int): Iterator[IndexedSeq[A]]
Groups elements in fixed size blocks by passing a "sliding window" over them (as opposed to partitioning them, as is done in
grouped
.) The "sliding window" step is set to one.Groups elements in fixed size blocks by passing a "sliding window" over them (as opposed to partitioning them, as is done in
grouped
.) The "sliding window" step is set to one.- size
the number of elements per group
- returns
An iterator producing ${coll}s of size
size
, except the last element (which may be the only element) will be truncated if there are fewer thansize
elements remaining to be grouped.
- Definition Classes
- IterableOps
- See also
scala.collection.Iterator, method
sliding
-
def
sortBy[B](f: (A) ⇒ B)(implicit ord: Ordering[B]): IndexedSeq[A]
Sorts this $Coll according to the Ordering which results from transforming an implicitly given Ordering with a transformation function.
Sorts this $Coll according to the Ordering which results from transforming an implicitly given Ordering with a transformation function.
- B
the target type of the transformation
f
, and the type where the orderingord
is defined.- f
the transformation function mapping elements to some other domain
B
.- ord
the ordering assumed on domain
B
.- returns
a $coll consisting of the elements of this $coll sorted according to the ordering where
x < y
iford.lt(f(x), f(y))
.
- Definition Classes
- SeqOps
val words = "The quick brown fox jumped over the lazy dog".split(' ') // this works because scala.Ordering will implicitly provide an Ordering[Tuple2[Int, Char]] words.sortBy(x => (x.length, x.head)) res0: Array[String] = Array(The, dog, fox, the, lazy, over, brown, quick, jumped)
- See also
scala.math.Ordering $willNotTerminateInf
Example: -
def
sortWith(lt: (A, A) ⇒ Boolean): IndexedSeq[A]
Sorts this $coll according to a comparison function.
Sorts this $coll according to a comparison function. $willNotTerminateInf
The sort is stable. That is, elements that are equal (as determined by
lt
) appear in the same order in the sorted sequence as in the original.- lt
the comparison function which tests whether its first argument precedes its second argument in the desired ordering.
- returns
a $coll consisting of the elements of this $coll sorted according to the comparison function
lt
.
- Definition Classes
- SeqOps
List("Steve", "Tom", "John", "Bob").sortWith(_.compareTo(_) < 0) = List("Bob", "John", "Steve", "Tom")
Example: -
def
sorted[B >: A](implicit ord: Ordering[B]): IndexedSeq[A]
Sorts this $coll according to an Ordering.
Sorts this $coll according to an Ordering.
The sort is stable. That is, elements that are equal (as determined by
lt
) appear in the same order in the sorted sequence as in the original.- ord
the ordering to be used to compare elements.
- returns
a $coll consisting of the elements of this $coll sorted according to the ordering
ord
.
- Definition Classes
- SeqOps
- See also
scala.math.Ordering
-
def
span(p: (A) ⇒ Boolean): (IndexedSeq[A], IndexedSeq[A])
Splits this $coll into a prefix/suffix pair according to a predicate.
Splits this $coll into a prefix/suffix pair according to a predicate.
Note:
c span p
is equivalent to (but possibly more efficient than)(c takeWhile p, c dropWhile p)
, provided the evaluation of the predicatep
does not cause any side-effects. $orderDependent- p
the test predicate
- returns
a pair consisting of the longest prefix of this $coll whose elements all satisfy
p
, and the rest of this $coll.
- Definition Classes
- IterableOps
-
def
splitAt(n: Int): (IndexedSeq[A], IndexedSeq[A])
Splits this $coll into two at a given position.
Splits this $coll into two at a given position. Note:
c splitAt n
is equivalent to (but possibly more efficient than)(c take n, c drop n)
. $orderDependent- n
the position at which to split.
- returns
a pair of ${coll}s consisting of the first
n
elements of this $coll, and the other elements.
- Definition Classes
- IterableOps
-
def
startsWith[B >: A](that: collection.Seq[B], offset: Int = 0): Boolean
Tests whether this $coll contains the given sequence at a given index.
Tests whether this $coll contains the given sequence at a given index.
Note: If the both the receiver object
this
and the argumentthat
are infinite sequences this method may not terminate.- that
the sequence to test
- offset
the index where the sequence is searched.
- returns
true
if the sequencethat
is contained in this $coll at indexoffset
, otherwisefalse
.
- Definition Classes
- SeqOps
-
def
sum: A
[use case] Sums up the elements of this collection.
[use case]Sums up the elements of this collection.
- returns
the sum of all elements in this $coll of numbers of type
Int
. Instead ofInt
, any other typeT
with an implicitNumeric[T]
implementation can be used as element type of the $coll and as result type ofsum
. Examples of such types are:Long
,Float
,Double
,BigInt
.
- Definition Classes
- IterableOps
Full Signaturedef sum[B >: A](implicit num: Numeric[B]): B
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
tail: IndexedSeq[A]
The rest of the collection without its first element.
The rest of the collection without its first element.
- Definition Classes
- IterableOps
-
def
take(n: Int): IndexedSeq[A]
A collection containing the first
n
elements of this collection.A collection containing the first
n
elements of this collection.- Definition Classes
- IterableOps
-
def
takeRight(n: Int): IndexedSeq[A]
A collection containing the last
n
elements of this collection.A collection containing the last
n
elements of this collection.- Definition Classes
- IndexedSeqOps → IterableOps
-
def
takeWhile(p: (A) ⇒ Boolean): IndexedSeq[A]
Takes longest prefix of elements that satisfy a predicate.
Takes longest prefix of elements that satisfy a predicate. $orderDependent
- p
The predicate used to test elements.
- returns
the longest prefix of this $coll whose elements all satisfy the predicate
p
.
- Definition Classes
- IterableOps
-
def
to[C1](f: CanBuild[A, C1]): C1
Given a collection factory
fi
, convert this collection to the appropriate representation for the current element typeA
.Given a collection factory
fi
, convert this collection to the appropriate representation for the current element typeA
. Example uses:xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // for xs: Iterable[Int]
- Definition Classes
- IterableOps
-
def
toArray[B >: A](implicit arg0: ClassTag[B]): Array[B]
Convert collection to array.
Convert collection to array.
- Definition Classes
- IterableOps
-
def
toString(): String
- Definition Classes
- IterableOps → Any
-
def
unzip[A1, A2](implicit asPair: <:<[A, (A1, A2)]): (IndexedSeq[A1], IndexedSeq[A2])
Converts this $coll of pairs into two collections of the first and second half of each pair.
Converts this $coll of pairs into two collections of the first and second half of each pair.
val xs = $Coll( (1, "one"), (2, "two"), (3, "three")).unzip // xs == ($Coll(1, 2, 3), // $Coll(one, two, three))
- A1
the type of the first half of the element pairs
- A2
the type of the second half of the element pairs
- asPair
an implicit conversion which asserts that the element type of this $coll is a pair.
- returns
a pair of ${coll}s, containing the first, respectively second half of each element pair of this $coll.
- Definition Classes
- IterableOps
-
def
updated[B >: A](index: Int, elem: B): IndexedSeq[B]
A copy of this $coll with one single replaced element.
A copy of this $coll with one single replaced element.
- B
the element type of the returned $coll.
- index
the position of the replacement
- elem
the replacing element
- returns
a copy of this $coll with the element at position
index
replaced byelem
.
- Definition Classes
- SeqOps
- Exceptions thrown
IndexOutOfBoundsException
ifindex
does not satisfy0 <= index < length
. <invalid inheritdoc annotation>
-
def
view: IndexedView[A]
A view representing the elements of this collection.
A view representing the elements of this collection.
- Definition Classes
- IndexedSeqOps → IterableOps
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
withFilter(p: (A) ⇒ Boolean): WithFilter
Creates a non-strict filter of this $coll.
Creates a non-strict filter of this $coll.
Note: the difference between
c filter p
andc withFilter p
is that the former creates a new collection, whereas the latter only restricts the domain of subsequentmap
,flatMap
,foreach
, andwithFilter
operations. $orderDependent- p
the predicate used to test elements.
- returns
an object of class
WithFilter
, which supportsmap
,flatMap
,foreach
, andwithFilter
operations. All these operations apply to those elements of this $coll which satisfy the predicatep
.
- Definition Classes
- IterableOps
-
def
zip[B](xs: IterableOnce[B]): IndexedSeq[(A, B)]
Returns a $coll formed from this $coll and another iterable collection by combining corresponding elements in pairs.
Returns a $coll formed from this $coll and another iterable collection by combining corresponding elements in pairs. If one of the two collections is longer than the other, its remaining elements are ignored.
- B
the type of the second half of the returned pairs
- xs
The iterable providing the second half of each result pair
- returns
a new collection of type
That
containing pairs consisting of corresponding elements of this $coll andthat
. The length of the returned collection is the minimum of the lengths of this $coll andthat
.
- Definition Classes
- IterableOps
-
def
zipWithIndex: IndexedSeq[(A, Int)]
Zips this $coll with its indices.
Zips this $coll with its indices.
- returns
A new collection of type
That
containing pairs consisting of all elements of this $coll paired with their index. Indices start at0
.
- Definition Classes
- IterableOps
List("a", "b", "c").zipWithIndex == List(("a", 0), ("b", 1), ("c", 2))
Example: