On this page
Trait scala.collection.StrictOptimizedSortedMapOps
trait StrictOptimizedSortedMapOps[K, +V, +CC <: ([X, Y] =>> Map[X, Y] & SortedMapOps[X, Y, CC, _]), +C <: SortedMapOps[K, V, CC, C]] extends SortedMapOps[K, V, CC, C] with StrictOptimizedMapOps[K, V, Map, C]
Trait that overrides sorted map operations to take advantage of strict builders.
Type parameters |
|
---|---|
Supertypes | |
Known subtypes |
Concrete methods
Source
override def collect[K2, V2](pf: PartialFunction[(K, V), (K2, V2)])(implicit @implicitNotFound ordering: Ordering[K2]): CC[K2, V2]
Definition Classes | SortedMapOps |
---|
Source
override def concat[V2 >: V](xs: IterableOnce[(K, V2)]): CC[K, V2]
Definition Classes | StrictOptimizedMapOps -> SortedMapOps -> MapOps |
---|
Source
override def flatMap[K2, V2](f: (K, V) => IterableOnce[(K2, V2)])(implicit @implicitNotFound ordering: Ordering[K2]): CC[K2, V2]
Definition Classes | SortedMapOps |
---|
Source
override def map[K2, V2](f: (K, V) => (K2, V2))(implicit @implicitNotFound ordering: Ordering[K2]): CC[K2, V2]
Definition Classes | SortedMapOps |
---|
Inherited methods
Source@inline
Alias for concat
Inherited from | IterableOps |
---|
Source@inline
final override def ++[V2 >: V](xs: IterableOnce[(K, V2)]): CC[K, V2]
Alias for concat
Definition Classes | SortedMapOps -> MapOps |
---|---|
Inherited from | SortedMapOps |
Source@inline
Appends all elements of this collection to a string builder. The written text consists of the string representations (w.r.t. the method toString
) of all elements of this collection without any separator string.
Example:
scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)
scala> val b = new StringBuilder()
b: StringBuilder =
scala> val h = a.addString(b)
h: StringBuilder = 1234
Value parameters |
|
---|---|
Returns | the string builder |
Inherited from | IterableOnceOps |
Source@inline
Appends all elements of this collection to a string builder using a separator string. The written text consists of the string representations (w.r.t. the method toString
) of all elements of this collection, separated by the string sep
.
Example:
scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)
scala> val b = new StringBuilder()
b: StringBuilder =
scala> a.addString(b, ", ")
res0: StringBuilder = 1, 2, 3, 4
Value parameters |
|
---|---|
Returns | the string builder |
Inherited from | IterableOnceOps |
Source
Definition Classes | MapOps -> IterableOnceOps |
---|---|
Inherited from | MapOps |
Source
Composes this partial function with another partial function that gets applied to results of this partial function.
Note that calling isDefinedAt on the resulting partial function may apply the first partial function and execute its side effect. For efficiency, it is recommended to call applyOrElse instead of isDefinedAt or apply.
Type parameters |
|
---|---|
Value parameters |
|
Returns | a partial function with the domain of this partial function narrowed by other partial function, which maps arguments |
Inherited from | PartialFunction |
Source
override def andThen[C](k: V => C): PartialFunction[K, C]
Composes this partial function with a transformation function that gets applied to results of this partial function.
If the runtime type of the function is a PartialFunction
then the other andThen
method is used (note its cautions).
Type parameters |
|
---|---|
Value parameters |
|
Returns | a partial function with the domain of this partial function, possibly narrowed by the specified function, which maps arguments |
Definition Classes | PartialFunction -> Function1 |
Inherited from | PartialFunction |
Source@throws(scala.throws.$lessinit$greater$default$1[scala.NoSuchElementException])
def apply(key: K): V
Retrieves the value which is associated with the given key. This method invokes the default
method of the map if there is no mapping from the given key to a value. Unless overridden, the default
method throws a NoSuchElementException
.
Value parameters |
|
---|---|
Returns | the value associated with the given key, or the result of the map's |
Inherited from | MapOps |
Source
override def applyOrElse[K1 <: K, V1 >: V](x: K1, default: K1 => V1): V1
Definition Classes | MapOps -> PartialFunction |
---|---|
Inherited from | MapOps |
Source
Definition Classes | StrictOptimizedMapOps -> MapOps |
---|---|
Inherited from | StrictOptimizedMapOps |
Source
Definition Classes | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
Finds the first element of the collection for which the given partial function is defined, and applies the partial function to it.
Note: may not terminate for infinite-sized collections.
Note: might return different results for different runs, unless the underlying collection type is ordered.
Value parameters |
|
---|---|
Returns | an option value containing pf applied to the first value for which it is defined, or |
Example |
|
Inherited from | IterableOnceOps |
Source
Composes another partial function k
with this partial function so that this partial function gets applied to results of k
.
Note that calling isDefinedAt on the resulting partial function may apply the first partial function and execute its side effect. For efficiency, it is recommended to call applyOrElse instead of isDefinedAt or apply.
Type parameters |
|
---|---|
Value parameters |
|
Returns | a partial function with the domain of other partial function narrowed by this partial function, which maps arguments |
Inherited from | PartialFunction |
Source@unspecialized
def compose[A](g: A => K): A => V
Composes two instances of Function1 in a new Function1, with this function applied last.
Type parameters |
|
---|---|
Value parameters |
|
Returns | a new function |
Inherited from | Function1 |
Source
Returns a new iterable collection containing the elements from the left hand operand followed by the elements from the right hand operand. The element type of the iterable collection is the most specific superclass encompassing the element types of the two operands.
Type parameters |
|
---|---|
Value parameters |
|
Returns | a new iterable collection which contains all elements of this iterable collection followed by all elements of |
Inherited from | IterableOps |
Source
Tests whether this map contains a binding for a key.
Value parameters |
|
---|---|
Returns |
|
Inherited from | MapOps |
Source
Copy elements to an array, returning the number of elements written.
Fills the given array xs
starting at index start
with at most len
elements of this collection.
Copying will stop once either all the elements of this collection have been copied, or the end of the array is reached, or len
elements have been copied.
Type parameters |
|
---|---|
Value parameters |
|
Returns | the number of elements written to the array |
Note | Reuse: After calling this method, one should discard the iterator it was called on. Using it is undefined and subject to change. |
Inherited from | IterableOnceOps |
Source@deprecatedOverriding("This should always forward to the 3-arg version of this method", since = "2.13.4")
Copy elements to an array, returning the number of elements written.
Fills the given array xs
starting at index start
with values of this collection.
Copying will stop once either all the elements of this collection have been copied, or the end of the array is reached.
Type parameters |
|
---|---|
Value parameters |
|
Returns | the number of elements written to the array |
Note | Reuse: After calling this method, one should discard the iterator it was called on. Using it is undefined and subject to change. |
Inherited from | IterableOnceOps |
Source@deprecatedOverriding("This should always forward to the 3-arg version of this method", since = "2.13.4")
Copy elements to an array, returning the number of elements written.
Fills the given array xs
starting at index start
with values of this collection.
Copying will stop once either all the elements of this collection have been copied, or the end of the array is reached.
Type parameters |
|
---|---|
Value parameters |
|
Returns | the number of elements written to the array |
Note | Reuse: After calling this method, one should discard the iterator it was called on. Using it is undefined and subject to change. |
Inherited from | IterableOnceOps |
Source
Tests whether every element of this collection's iterator relates to the corresponding element of another collection by satisfying a test predicate.
Note: will not terminate for infinite-sized collections.
Type parameters |
|
---|---|
Value parameters |
|
Returns |
|
Inherited from | IterableOnceOps |
Source
Counts the number of elements in the collection which satisfy a predicate.
Note: will not terminate for infinite-sized collections.
Value parameters |
|
---|---|
Returns | the number of elements satisfying the predicate |
Inherited from | IterableOnceOps |
Source@throws(scala.throws.$lessinit$greater$default$1[scala.NoSuchElementException])
def default(key: K): V
Defines the default value computation for the map, returned when a key is not found The method implemented here throws an exception, but it might be overridden in subclasses.
Value parameters |
|
---|---|
Inherited from | MapOps |
Source
Inherited from | IterableOps |
---|
Source
The rest of the collection without its n
last elements. For linear, immutable collections this should avoid making a copy.
Note: Even when applied to a view or a lazy collection it will always force the elements.
Definition Classes | StrictOptimizedIterableOps -> IterableOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
Inherited from | IterableOps |
---|
Source
def elementWise: ElementWiseExtractor[K, V]
Returns an extractor object with a unapplySeq
method, which extracts each element of a sequence data.
Example |
|
---|---|
Inherited from | PartialFunction |
Source
def empty: C
The empty iterable of the same type as this iterable
Returns | an empty iterable of type |
---|---|
Inherited from | IterableOps |
Source
Tests whether a predicate holds for at least one element of this collection.
Note: may not terminate for infinite-sized collections.
Value parameters |
|
---|---|
Returns |
|
Inherited from | IterableOnceOps |
Source
Definition Classes | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
Definition Classes | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
Finds the first element of the collection satisfying a predicate, if any.
Note: may not terminate for infinite-sized collections.
Note: might return different results for different runs, unless the underlying collection type is ordered.
Value parameters |
|
---|---|
Returns | an option value containing the first element in the collection that satisfies |
Inherited from | IterableOnceOps |
Source
def firstKey: K
Inherited from | SortedMapOps |
---|
Source
Definition Classes | StrictOptimizedMapOps -> MapOps |
---|---|
Inherited from | StrictOptimizedMapOps |
Source
Definition Classes | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
Definition Classes | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
def fold[A1 >: (K, V)](z: A1)(op: (A1, A1) => A1): A1
Folds the elements of this collection using the specified associative binary operator. The default implementation in IterableOnce
is equivalent to foldLeft
but may be overridden for more efficient traversal orders.
The order in which operations are performed on elements is unspecified and may be nondeterministic.
Note: will not terminate for infinite-sized collections.
Type parameters |
|
---|---|
Value parameters |
|
Returns | the result of applying the fold operator |
Inherited from | IterableOnceOps |
Source
def foldLeft[B](z: B)(op: (B, (K, V)) => B): B
Applies a binary operator to a start value and all elements of this collection, going left to right.
Note: will not terminate for infinite-sized collections.
Note: might return different results for different runs, unless the underlying collection type is ordered or the operator is associative and commutative.
Type parameters |
|
---|---|
Value parameters |
|
Returns | the result of inserting |
Inherited from | IterableOnceOps |
Source
def foldRight[B](z: B)(op: ((K, V), B) => B): B
Applies a binary operator to all elements of this collection and a start value, going right to left.
Note: will not terminate for infinite-sized collections.
Note: might return different results for different runs, unless the underlying collection type is ordered or the operator is associative and commutative.
Type parameters |
|
---|---|
Value parameters |
|
Returns | the result of inserting |
Inherited from | IterableOnceOps |
Source
Tests whether a predicate holds for all elements of this collection.
Note: may not terminate for infinite-sized collections.
Value parameters |
|
---|---|
Returns |
|
Inherited from | IterableOnceOps |
Source
Apply f
to each element for its side effects Note: [U] parameter needed to help scalac's type inference.
Inherited from | IterableOnceOps |
---|
Source
def foreachEntry[U](f: (K, V) => U): Unit
Apply f
to each key/value pair for its side effects Note: [U] parameter needed to help scalac's type inference.
Inherited from | MapOps |
---|
Source
Optionally returns the value associated with a key.
Value parameters |
|
---|---|
Returns | an option value containing the value associated with |
Inherited from | MapOps |
Source
def getOrElse[V1 >: V](key: K, default: => V1): V1
Returns the value associated with a key, or a default value if the key is not contained in the map.
Type parameters |
|
---|---|
Value parameters |
|
Returns | the value associated with |
Inherited from | MapOps |
Source
Partitions this iterable collection into a map of iterable collections according to some discriminator function.
Note: Even when applied to a view or a lazy collection it will always force the elements.
Type parameters |
|
---|---|
Value parameters |
|
Returns | A map from keys to iterable collections such that the following invariant holds: That is, every key |
Inherited from | IterableOps |
Source
Partitions this iterable collection into a map of iterable collections according to a discriminator function key
. Each element in a group is transformed into a value of type B
using the value
function.
It is equivalent to groupBy(key).mapValues(_.map(f))
, but more efficient.
case class User(name: String, age: Int)
def namesByAge(users: Seq[User]): Map[Int, Seq[String]] =
users.groupMap(_.age)(_.name)
Note: Even when applied to a view or a lazy collection it will always force the elements.
Type parameters |
|
---|---|
Value parameters |
|
Inherited from | IterableOps |
Source
def groupMapReduce[K, B](key: (K, V) => K)(f: (K, V) => B)(reduce: (B, B) => B): Map[K, B]
Partitions this iterable collection into a map according to a discriminator function key
. All the values that have the same discriminator are then transformed by the f
function and then reduced into a single value with the reduce
function.
It is equivalent to groupBy(key).mapValues(_.map(f).reduce(reduce))
, but more efficient.
def occurrences[A](as: Seq[A]): Map[A, Int] =
as.groupMapReduce(identity)(_ => 1)(_ + _)
Note: Even when applied to a view or a lazy collection it will always force the elements.
Inherited from | IterableOps |
---|
Source
Partitions elements in fixed size iterable collections.
Value parameters |
|
---|---|
Returns | An iterator producing iterable collections of size |
See also | scala.collection.Iterator, method |
Inherited from | IterableOps |
Source
def head: (K, V)
Selects the first element of this iterable collection.
Note: might return different results for different runs, unless the underlying collection type is ordered.
Returns | the first element of this iterable collection. |
---|---|
Throws |
|
Inherited from | IterableOps |
Source
def headOption: Option[(K, V)]
Optionally selects the first element.
Note: might return different results for different runs, unless the underlying collection type is ordered.
Returns | the first element of this iterable collection if it is nonempty, |
---|---|
Inherited from | IterableOps |
Source
def init: C
The initial part of the collection without its last element.
Note: Even when applied to a view or a lazy collection it will always force the elements.
Inherited from | IterableOps |
---|
Source
Iterates over the inits of this iterable collection. The first value will be this iterable collection and the final one will be an empty iterable collection, with the intervening values the results of successive applications of init
.
Note: Even when applied to a view or a lazy collection it will always force the elements.
Returns | an iterator over all the inits of this iterable collection |
---|---|
Example |
|
Inherited from | IterableOps |
Source
def isDefinedAt(key: K): Boolean
Tests whether this map contains a binding for a key. This method, which implements an abstract method of trait PartialFunction
, is equivalent to contains
.
Value parameters |
|
---|---|
Returns |
|
Inherited from | MapOps |
Source
Tests whether the collection is empty.
Note: Implementations in subclasses that are not repeatedly traversable must take care not to consume any elements when isEmpty
is called.
Returns |
|
---|---|
Inherited from | IterableOnceOps |
Source
override def isTraversableAgain: Boolean
Definition Classes | IterableOps -> IterableOnceOps |
---|---|
Inherited from | IterableOps |
Source
The companion object of this iterable collection, providing various factory methods.
Note | When implementing a custom collection type and refining |
---|---|
Inherited from | IterableOps |
Source
Iterator can be used only once
Inherited from | IterableOnce |
---|
Source
def iteratorFrom(start: K): Iterator[(K, V)]
Creates an iterator over all the key/value pairs contained in this map having a key greater than or equal to start
according to the ordering of this map. x.iteratorFrom(y) is equivalent to but often more efficient than x.from(y).iterator.
Value parameters |
|
---|---|
Inherited from | SortedMapOps |
Source
Definition Classes | SortedMapOps -> MapOps |
---|---|
Inherited from | SortedMapOps |
Source
Returns a Stepper for the keys of this map. See method stepper.
Inherited from | MapOps |
---|
Source
Collects all keys of this map in an iterable collection.
Returns | the keys of this map as an iterable. |
---|---|
Inherited from | MapOps |
Source
def keysIterator: Iterator[K]
Creates an iterator for all keys.
Returns | an iterator over all keys. |
---|---|
Inherited from | MapOps |
Source
def keysIteratorFrom(start: K): Iterator[K]
Creates an iterator over all the keys(or elements) contained in this collection greater than or equal to start
according to the ordering of this collection. x.keysIteratorFrom(y) is equivalent to but often more efficient than x.from(y).keysIterator.
Value parameters |
|
---|---|
Inherited from | SortedMapOps |
Source
Returns | The number of elements in this collection, if it can be cheaply computed, -1 otherwise. Cheaply usually means: Not requiring a collection traversal. |
---|---|
Inherited from | IterableOnce |
Source
def last: (K, V)
Selects the last element.
Note: might return different results for different runs, unless the underlying collection type is ordered.
Returns | The last element of this iterable collection. |
---|---|
Throws |
|
Inherited from | IterableOps |
Source
def lastKey: K
Inherited from | SortedMapOps |
---|
Source
def lastOption: Option[(K, V)]
Optionally selects the last element.
Note: might return different results for different runs, unless the underlying collection type is ordered.
Returns | the last element of this iterable collection$ if it is nonempty, |
---|---|
Inherited from | IterableOps |
Source
Turns this partial function into a plain function returning an Option
result.
Returns | a function that takes an argument |
---|---|
See also | Function.unlift |
Inherited from | PartialFunction |
Source
Definition Classes | StrictOptimizedMapOps -> MapOps |
---|---|
Inherited from | StrictOptimizedMapOps |
Source
Definition Classes | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
The companion object of this map, providing various factory methods.
Note | When implementing a custom collection type and refining |
---|---|
Inherited from | MapOps |
Source
Finds the largest element.
Note: will not terminate for infinite-sized collections.
Type parameters |
|
---|---|
Value parameters |
|
Returns | the largest element of this collection with respect to the ordering |
Throws |
|
Inherited from | IterableOnceOps |
Source
Find the element with largest key less than a given key.
Value parameters |
|
---|---|
Returns |
|
Inherited from | SortedMapOps |
Source
Finds the first element which yields the largest value measured by function f.
Note: will not terminate for infinite-sized collections.
Type parameters |
|
---|---|
Value parameters |
|
Returns | the first element of this collection with the largest value measured by function f with respect to the ordering |
Throws |
|
Inherited from | IterableOnceOps |
Source
Finds the first element which yields the largest value measured by function f.
Note: will not terminate for infinite-sized collections.
Type parameters |
|
---|---|
Value parameters |
|
Returns | an option value containing the first element of this collection with the largest value measured by function f with respect to the ordering |
Inherited from | IterableOnceOps |
Source
Finds the largest element.
Note: will not terminate for infinite-sized collections.
Type parameters |
|
---|---|
Value parameters |
|
Returns | an option value containing the largest element of this collection with respect to the ordering |
Inherited from | IterableOnceOps |
Source
Finds the smallest element.
Note: will not terminate for infinite-sized collections.
Type parameters |
|
---|---|
Value parameters |
|
Returns | the smallest element of this collection with respect to the ordering |
Throws |
|
Inherited from | IterableOnceOps |
Source
Find the element with smallest key larger than or equal to a given key.
Value parameters |
|
---|---|
Returns |
|
Inherited from | SortedMapOps |
Source
Finds the first element which yields the smallest value measured by function f.
Note: will not terminate for infinite-sized collections.
Type parameters |
|
---|---|
Value parameters |
|
Returns | the first element of this collection with the smallest value measured by function f with respect to the ordering |
Throws |
|
Inherited from | IterableOnceOps |
Source
Finds the first element which yields the smallest value measured by function f.
Note: will not terminate for infinite-sized collections.
Type parameters |
|
---|---|
Value parameters |
|
Returns | an option value containing the first element of this collection with the smallest value measured by function f with respect to the ordering |
Inherited from | IterableOnceOps |
Source
Finds the smallest element.
Note: will not terminate for infinite-sized collections.
Type parameters |
|
---|---|
Value parameters |
|
Returns | an option value containing the smallest element of this collection with respect to the ordering |
Inherited from | IterableOnceOps |
Source@inline
Displays all elements of this collection in a string.
Delegates to addString, which can be overridden.
Returns | a string representation of this collection. In the resulting string the string representations (w.r.t. the method |
---|---|
Inherited from | IterableOnceOps |
Source@inline
Displays all elements of this collection in a string using a separator string.
Delegates to addString, which can be overridden.
Value parameters |
|
---|---|
Returns | a string representation of this collection. In the resulting string the string representations (w.r.t. the method |
Example |
|
Inherited from | IterableOnceOps |
Source
Displays all elements of this collection in a string using start, end, and separator strings.
Delegates to addString, which can be overridden.
Value parameters |
|
---|---|
Returns | a string representation of this collection. The resulting string begins with the string |
Example |
|
Inherited from | IterableOnceOps |
Source@deprecatedOverriding("nonEmpty is defined as !isEmpty; override isEmpty instead", "2.13.0")
Tests whether the collection is not empty.
Returns |
|
---|---|
Inherited from | IterableOnceOps |
Source
Composes this partial function with a fallback partial function which gets applied where this partial function is not defined.
Type parameters |
|
---|---|
Value parameters |
|
Returns | a partial function which has as domain the union of the domains of this partial function and |
Inherited from | PartialFunction |
Source
Inherited from | SortedOps |
---|
Source
Definition Classes | StrictOptimizedIterableOps -> IterableOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
Definition Classes | StrictOptimizedIterableOps -> IterableOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
Multiplies up the elements of this collection.
Note: will not terminate for infinite-sized collections.
Type parameters |
|
---|---|
Value parameters |
|
Returns | the product of all elements of this collection with respect to the |
Inherited from | IterableOnceOps |
Source
def range(from: K, until: K): C
Creates a ranged projection of this collection with both a lower-bound and an upper-bound.
Value parameters |
|
---|---|
Inherited from | SortedOps |
Source
def rangeFrom(from: K): C
Creates a ranged projection of this collection with no upper-bound.
Value parameters |
|
---|---|
Inherited from | SortedOps |
Source
Creates a ranged projection of this collection. Any mutations in the ranged projection will update this collection and vice versa.
Note: keys are not guaranteed to be consistent between this collection and the projection. This is the case for buffers where indexing is relative to the projection.
Value parameters |
|
---|---|
Inherited from | SortedOps |
Source
def rangeTo(to: K): C
Inherited from | SortedMapOps |
---|
Source
def rangeUntil(until: K): C
Creates a ranged projection of this collection with no lower-bound.
Value parameters |
|
---|---|
Inherited from | SortedOps |
Source
def reduce[B >: (K, V)](op: (B, B) => B): B
Reduces the elements of this collection using the specified associative binary operator.
The order in which operations are performed on elements is unspecified and may be nondeterministic.
Type parameters |
|
---|---|
Value parameters |
|
Returns | The result of applying reduce operator |
Throws |
|
Inherited from | IterableOnceOps |
Source
def reduceLeft[B >: (K, V)](op: (B, (K, V)) => B): B
Applies a binary operator to all elements of this collection, going left to right.
Note: will not terminate for infinite-sized collections.
Note: might return different results for different runs, unless the underlying collection type is ordered or the operator is associative and commutative.
Type parameters |
|
---|---|
Value parameters |
|
Returns | the result of inserting |
Throws |
|
Inherited from | IterableOnceOps |
Source
def reduceLeftOption[B >: (K, V)](op: (B, (K, V)) => B): Option[B]
Optionally applies a binary operator to all elements of this collection, going left to right.
Note: will not terminate for infinite-sized collections.
Note: might return different results for different runs, unless the underlying collection type is ordered or the operator is associative and commutative.
Type parameters |
|
---|---|
Value parameters |
|
Returns | an option value containing the result of |
Inherited from | IterableOnceOps |
Source
def reduceOption[B >: (K, V)](op: (B, B) => B): Option[B]
Reduces the elements of this collection, if any, using the specified associative binary operator.
The order in which operations are performed on elements is unspecified and may be nondeterministic.
Type parameters |
|
---|---|
Value parameters |
|
Returns | An option value containing result of applying reduce operator |
Inherited from | IterableOnceOps |
Source
def reduceRight[B >: (K, V)](op: ((K, V), B) => B): B
Applies a binary operator to all elements of this collection, going right to left.
Note: will not terminate for infinite-sized collections.
Note: might return different results for different runs, unless the underlying collection type is ordered or the operator is associative and commutative.
Type parameters |
|
---|---|
Value parameters |
|
Returns | the result of inserting |
Throws |
|
Inherited from | IterableOnceOps |
Source
def reduceRightOption[B >: (K, V)](op: ((K, V), B) => B): Option[B]
Optionally applies a binary operator to all elements of this collection, going right to left.
Note: will not terminate for infinite-sized collections.
Note: might return different results for different runs, unless the underlying collection type is ordered or the operator is associative and commutative.
Type parameters |
|
---|---|
Value parameters |
|
Returns | an option value containing the result of |
Inherited from | IterableOnceOps |
Source
Inherited from | IterableOnceOps |
---|
Source
Composes this partial function with an action function which gets applied to results of this partial function. The action function is invoked only for its side effects; its result is ignored.
Note that expression pf.runWith(action)(x)
is equivalent to
if(pf isDefinedAt x) { action(pf(x)); true } else false
except that runWith
is implemented via applyOrElse
and thus potentially more efficient. Using runWith
avoids double evaluation of pattern matchers and guards for partial function literals.
Value parameters |
|
---|---|
Returns | a function which maps arguments |
See also |
|
Inherited from | PartialFunction |
Source
Computes a prefix scan of the elements of the collection.
Note: The neutral element z
may be applied more than once.
Type parameters |
|
---|---|
Value parameters |
|
Returns | a new iterable collection containing the prefix scan of the elements in this iterable collection |
Inherited from | IterableOps |
Source
Definition Classes | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
Produces a collection containing cumulative results of applying the operator going right to left. The head of the collection is the last cumulative result.
Note: will not terminate for infinite-sized collections.
Note: might return different results for different runs, unless the underlying collection type is ordered.
Note: Even when applied to a view or a lazy collection it will always force the elements.
Example:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
Type parameters |
|
---|---|
Value parameters |
|
Returns | collection with intermediate results |
Inherited from | IterableOps |
Source
The size of this collection.
Note: will not terminate for infinite-sized collections.
Returns | the number of elements in this collection. |
---|---|
Inherited from | IterableOnceOps |
Source
Compares the size of this iterable collection to the size of another Iterable
.
Value parameters |
|
---|---|
Returns | A value The method as implemented here does not call |
Inherited from | IterableOps |
Source
Compares the size of this iterable collection to a test value.
Value parameters |
|
---|---|
Returns | A value The method as implemented here does not call |
See also | |
Inherited from | IterableOps |
Source@inline
final def sizeIs: SizeCompareOps
Returns a value class containing operations for comparing the size of this iterable collection to a test value.
These operations are implemented in terms of sizeCompare(Int)
, and allow the following more readable usages:
this.sizeIs < size // this.sizeCompare(size) < 0
this.sizeIs <= size // this.sizeCompare(size) <= 0
this.sizeIs == size // this.sizeCompare(size) == 0
this.sizeIs != size // this.sizeCompare(size) != 0
this.sizeIs >= size // this.sizeCompare(size) >= 0
this.sizeIs > size // this.sizeCompare(size) > 0
Inherited from | IterableOps |
---|
Source
Inherited from | IterableOps |
---|
Source
Groups elements in fixed size blocks by passing a "sliding window" over them (as opposed to partitioning them, as is done in grouped.)
The returned iterator will be empty when called on an empty collection. The last element the iterator produces may be smaller than the window size when the original collection isn't exhausted by the window before it and its last element isn't skipped by the step before it.
Value parameters |
|
---|---|
Returns | An iterator producing iterable collections of size |
See also | scala.collection.Iterator, method |
Example |
|
Inherited from | IterableOps |
Source
Groups elements in fixed size blocks by passing a "sliding window" over them (as opposed to partitioning them, as is done in grouped
.)
An empty collection returns an empty iterator, and a non-empty collection containing fewer elements than the window size returns an iterator that will produce the original collection as its only element.
Value parameters |
|
---|---|
Returns | An iterator producing iterable collections of size |
See also | scala.collection.Iterator, method |
Example |
|
Inherited from | IterableOps |
Source
def sortedMapFactory: SortedMapFactory[CC]
The companion object of this sorted map, providing various factory methods.
Note | When implementing a custom collection type and refining |
---|---|
Inherited from | SortedMapOps |
Source
Definition Classes | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
Definition Classes | IterableOps -> IterableOnceOps |
---|---|
Inherited from | IterableOps |
Source
Returns a scala.collection.Stepper for the elements of this collection.
The Stepper enables creating a Java stream to operate on the collection, see scala.jdk.StreamConverters. For collections holding primitive values, the Stepper can be used as an iterator which doesn't box the elements.
The implicit scala.collection.StepperShape parameter defines the resulting Stepper type according to the element type of this collection.
For collections of
Int
,Short
,Byte
orChar
, an scala.collection.IntStepper is returnedFor collections of
Double
orFloat
, a scala.collection.DoubleStepper is returnedFor collections of
Long
a scala.collection.LongStepper is returnedFor any other element type, an scala.collection.AnyStepper is returned
Note that this method is overridden in subclasses and the return type is refined to S with EfficientSplit
, for example scala.collection.IndexedSeqOps.stepper. For Steppers marked with scala.collection.Stepper.EfficientSplit, the converters in scala.jdk.StreamConverters allow creating parallel streams, whereas bare Steppers can be converted only to sequential streams.
Inherited from | IterableOnce |
---|
Source
Sums up the elements of this collection.
Note: will not terminate for infinite-sized collections.
Type parameters |
|
---|---|
Value parameters |
|
Returns | the sum of all elements of this collection with respect to the |
Inherited from | IterableOnceOps |
Source
def tail: C
The rest of the collection without its first element.
Inherited from | IterableOps |
---|
Source
Iterates over the tails of this iterable collection. The first value will be this iterable collection and the final one will be an empty iterable collection, with the intervening values the results of successive applications of tail
.
Returns | an iterator over all the tails of this iterable collection |
---|---|
Example |
|
Inherited from | IterableOps |
Source
Inherited from | IterableOps |
---|
Source
A collection containing the last n
elements of this collection.
Note: Even when applied to a view or a lazy collection it will always force the elements.
Definition Classes | StrictOptimizedIterableOps -> IterableOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
Takes longest prefix of elements that satisfy a predicate.
Note: might return different results for different runs, unless the underlying collection type is ordered.
Value parameters |
|
---|---|
Returns | the longest prefix of this iterable collection whose elements all satisfy the predicate |
Inherited from | IterableOps |
Source
override def tapEach[U](f: (K, V) => U): C
Definition Classes | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
Given a collection factory factory
, convert this collection to the appropriate representation for the current element type A
. Example uses:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // for xs: Iterable[Int]
Inherited from | IterableOnceOps |
---|
Source
Convert collection to array.
Implementation note: DO NOT call Array.from from this method.
Inherited from | IterableOnceOps |
---|
Source@inline
Inherited from | IterableOnceOps |
---|
Source
def toIndexedSeq: IndexedSeq[(K, V)]
Inherited from | IterableOnceOps |
---|
Source
Inherited from | IterableOnceOps |
---|
Source
Inherited from | IterableOnceOps |
---|
Source
Returns | This collection as a |
---|---|
Inherited from | IterableOnceOps |
Source
Inherited from | IterableOnceOps |
---|
Source
Source
Inherited from | IterableOnceOps |
---|
Source
Transposes this iterable collection of iterable collections into a iterable collection of iterable collections.
The resulting collection's type will be guided by the static type of iterable collection. For example:
val xs = List(
Set(1, 2, 3),
Set(4, 5, 6)).transpose
// xs == List(
// List(1, 4),
// List(2, 5),
// List(3, 6))
val ys = Vector(
List(1, 2, 3),
List(4, 5, 6)).transpose
// ys == Vector(
// Vector(1, 4),
// Vector(2, 5),
// Vector(3, 6))
Note: Even when applied to a view or a lazy collection it will always force the elements.
Type parameters |
|
---|---|
Value parameters |
|
Returns | a two-dimensional iterable collection of iterable collections which has as nth row the nth column of this iterable collection. |
Throws |
|
Inherited from | IterableOps |
Source
Tries to extract a B
from an A
in a pattern matching expression.
Inherited from | PartialFunction |
---|
Source
Inherited from | SortedMapOps |
---|
Source
Definition Classes | StrictOptimizedIterableOps -> IterableOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
Definition Classes | StrictOptimizedIterableOps -> IterableOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
Returns a Stepper for the values of this map. See method stepper.
Inherited from | MapOps |
---|
Source
Collects all values of this map in an iterable collection.
Returns | the values of this map as an iterable. |
---|---|
Inherited from | MapOps |
Source
def valuesIterator: Iterator[V]
Creates an iterator for all values in this map.
Returns | an iterator over all values that are associated with some key in this map. |
---|---|
Inherited from | MapOps |
Source
def valuesIteratorFrom(start: K): Iterator[V]
Creates an iterator over all the values contained in this map that are associated with a key greater than or equal to start
according to the ordering of this map. x.valuesIteratorFrom(y) is equivalent to but often more efficient than x.from(y).valuesIterator.
Value parameters |
|
---|---|
Inherited from | SortedMapOps |
Source
Definition Classes | MapOps -> IterableOps |
---|---|
Inherited from | MapOps |
Source
Creates a non-strict filter of this iterable collection.
Note: the difference between c filter p
and c withFilter p
is that the former creates a new collection, whereas the latter only restricts the domain of subsequent map
, flatMap
, foreach
, and withFilter
operations.
Note: might return different results for different runs, unless the underlying collection type is ordered.
Value parameters |
|
---|---|
Returns | an object of class |
Inherited from | IterableOps |
Source
Definition Classes | StrictOptimizedIterableOps -> IterableOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
Source
Returns a iterable collection formed from this iterable collection and another iterable collection by combining corresponding elements in pairs. If one of the two collections is shorter than the other, placeholder elements are used to extend the shorter collection to the length of the longer.
Value parameters |
|
---|---|
Returns | a new collection of type |
Inherited from | IterableOps |
Source
Definition Classes | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
---|---|
Inherited from | StrictOptimizedIterableOps |
© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.1.1/scala/collection/StrictOptimizedSortedMapOps.html