Scala Library
|
|
scala/collection/immutable/HashMap.scala
]
class
HashMap[A, +B]
extends
Map[A, B] with
MapLike[A, B, HashMap[A, B]] with
HashTable[A]This class implements immutable maps using a hash table.
It is optimized for sequential accesses where the last updated table is accessed most often. It supports with reasonable efficiency accesses to previous versions of the table by keeping a change log that's regularly compacted. It needs to synchronize most methods, so it is less suitable for highly concurrent accesses.
Type Summary | |
type
|
Entry |
Value Summary | |
protected var
|
deltaSize : Int |
protected var
|
later : HashMap[A, B] |
protected var
|
oldKey : A |
protected var
|
oldValue : Option[B] |
Values and Variables inherited from HashTable | |
loadFactorDenum, table, tableSize, threshold |
Method Summary | |
override def
|
+
[B1 >: B](kv : (A, B1)) : HashMap[A, B1]
Add a key/value pair to this map.
|
override def
|
+
[B1 >: B](elem1 : (A, B1), elem2 : (A, B1), elems : (A, B1)*) : HashMap[A, B1]
Adds two or more elements to this collection and returns
either the collection itself (if it is mutable), or a new collection
with the added elements.
|
def
|
-
(key : A) : HashMap[A, B]
Removes a key from this map, returning a new map
|
override def
|
empty : HashMap[A, B] |
def
|
get
(key : A) : Option[B]
Check if this map maps
key to a value and return the
value as an option if it exists, None if not. |
def
|
iterator
: Iterator[(A, B)]
An iterator yielding all key/value mappings of this map.
|
override def
|
size
: Int
The number of elements in this collection
|
override def
|
updated
[B1 >: B](key : A, value : B1) : HashMap[A, B1]
Add a key/value pair to this map.
|
Methods inherited from HashTable | |
loadFactor, initialSize, initialThreshold, findEntry, addEntry, removeEntry, entriesIterator, entries, clearTable, elemEquals, elemHashCode, improve, index |
Methods inherited from Map | |
withDefault, withDefaultValue |
Methods inherited from MapLike | |
++, ++, transform, filterNot, update |
Methods inherited from MapLike | |
newBuilder, isEmpty, getOrElse, apply, contains, isDefinedAt, keySet, keysIterator, keys, valuesIterable, valuesIterator, values, default, filterKeys, mapValues, mapElements, addString, stringPrefix, toString, hashCode, equals |
Methods inherited from Subtractable | |
-, --, -- |
Methods inherited from PartialFunction | |
orElse, andThen |
Methods inherited from Function1 | |
compose |
Methods inherited from Iterable | |
companion |
Methods inherited from IterableLike | |
thisCollection, toCollection, elements, foreach, forall, exists, find, foldRight, reduceRight, toIterable, head, take, slice, takeWhile, takeRight, dropRight, copyToArray, zip, zipAll, zipWithIndex, sameElements, toStream, canEqual, view, view, first, firstOption, projection |
Methods inherited from GenericTraversableTemplate | |
genericBuilder, unzip, flatten, transpose |
Methods inherited from TraversableLike | |
repr, nonEmpty, hasDefiniteSize, ++, ++, map, flatMap, filter, partialMap, remove, partition, groupBy, count, foldLeft, /:, :\, reduceLeft, reduceLeftOption, reduceRightOption, sum, product, min, max, headOption, tail, last, lastOption, init, drop, dropWhile, span, splitAt, copyToBuffer, copyToArray, toArray, toList, toSeq, toIndexedSeq, toSet, mkString, mkString, mkString, addString, addString, withFilter |
Methods inherited from AnyRef | |
getClass, clone, notify, notifyAll, wait, wait, wait, finalize, ==, !=, eq, ne, synchronized |
Methods inherited from Any | |
==, !=, isInstanceOf, asInstanceOf |
Type Details |
Value Details |
Method Details |
key
to a value and return the
value as an option if it exists, None if not.key -
the key of the mapping of interest.key -
the keyvalue -
the valuekv -
the key/value pairelem1 -
the first element to add.elem2 -
the second element to add.elems -
the remaining elements to add.key -
the key to be removedkey
override
def
size : Int
Scala Library
|
|