Packages

class OpenHashMap[K, V] extends Iterable[(K, V)] with Serializable

OpenHashMap

A fast hash map implementation for nullable keys. This hash map supports insertions and updates, but not deletions. This map is about 5X faster than java.util.HashMap, while using much less space overhead.

Under the hood, it uses our OpenHashSet implementation.

NOTE: when using numeric type as the value type, the user of this class should be careful to distinguish between the 0/0.0/0L and non-exist value

Version

1.0

Since

2021/3/30 5:29 下午

Linear Supertypes
Serializable, Serializable, Iterable[(K, V)], IterableLike[(K, V), Iterable[(K, V)]], Equals, GenIterable[(K, V)], GenIterableLike[(K, V), Iterable[(K, V)]], Traversable[(K, V)], GenTraversable[(K, V)], GenericTraversableTemplate[(K, V), Iterable], TraversableLike[(K, V), Iterable[(K, V)]], GenTraversableLike[(K, V), Iterable[(K, V)]], Parallelizable[(K, V), ParIterable[(K, V)]], TraversableOnce[(K, V)], GenTraversableOnce[(K, V)], FilterMonadic[(K, V), Iterable[(K, V)]], HasNewBuilder[(K, V), Iterable[(K, V)] @scala.annotation.unchecked.uncheckedVariance], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. OpenHashMap
  2. Serializable
  3. Serializable
  4. Iterable
  5. IterableLike
  6. Equals
  7. GenIterable
  8. GenIterableLike
  9. Traversable
  10. GenTraversable
  11. GenericTraversableTemplate
  12. TraversableLike
  13. GenTraversableLike
  14. Parallelizable
  15. TraversableOnce
  16. GenTraversableOnce
  17. FilterMonadic
  18. HasNewBuilder
  19. AnyRef
  20. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new OpenHashMap()(implicit arg0: ClassTag[K], arg1: ClassTag[V])
  2. new OpenHashMap(initialCapacity: Int)(implicit arg0: ClassTag[K], arg1: ClassTag[V])

Type Members

  1. type Self = Iterable[(K, V)]
    Attributes
    protected[this]
    Definition Classes
    TraversableLike
  2. class WithFilter extends FilterMonadic[A, Repr]
    Definition Classes
    TraversableLike

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def ++[B >: (K, V), That](that: GenTraversableOnce[B])(implicit bf: CanBuildFrom[Iterable[(K, V)], B, That]): That
    Definition Classes
    TraversableLike → GenTraversableLike
  4. def ++:[B >: (K, V), That](that: Traversable[B])(implicit bf: CanBuildFrom[Iterable[(K, V)], B, That]): That
    Definition Classes
    TraversableLike
  5. def ++:[B >: (K, V), That](that: TraversableOnce[B])(implicit bf: CanBuildFrom[Iterable[(K, V)], B, That]): That
    Definition Classes
    TraversableLike
  6. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  7. var _keySet: OpenHashSet[K]
    Attributes
    protected
  8. def addString(b: StringBuilder): StringBuilder
    Definition Classes
    TraversableOnce
  9. def addString(b: StringBuilder, sep: String): StringBuilder
    Definition Classes
    TraversableOnce
  10. def addString(b: StringBuilder, start: String, sep: String, end: String): StringBuilder
    Definition Classes
    TraversableOnce
  11. def aggregate[B](z: ⇒ B)(seqop: (B, (K, V)) ⇒ B, combop: (B, B) ⇒ B): B
    Definition Classes
    TraversableOnce → GenTraversableOnce
  12. def apply(k: K): V

    Get the value for a given key

  13. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  14. def canEqual(that: Any): Boolean
    Definition Classes
    IterableLike → Equals
  15. def changeValue(k: K, defaultValue: ⇒ V, mergeValue: (V) ⇒ V): V

    If the key doesn't exist yet in the hash map, set its value to defaultValue; otherwise, set its value to mergeValue(oldValue).

    If the key doesn't exist yet in the hash map, set its value to defaultValue; otherwise, set its value to mergeValue(oldValue).

    returns

    the newly updated value.

  16. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  17. def collect[B, That](pf: PartialFunction[(K, V), B])(implicit bf: CanBuildFrom[Iterable[(K, V)], B, That]): That
    Definition Classes
    TraversableLike → GenTraversableLike
  18. def collectFirst[B](pf: PartialFunction[(K, V), B]): Option[B]
    Definition Classes
    TraversableOnce
  19. def companion: GenericCompanion[Iterable]
    Definition Classes
    Iterable → GenIterable → Traversable → GenTraversable → GenericTraversableTemplate
  20. def contains(k: K): Boolean

    Tests whether this map contains a binding for a key.

  21. def copyToArray[B >: (K, V)](xs: Array[B], start: Int, len: Int): Unit
    Definition Classes
    IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
  22. def copyToArray[B >: (K, V)](xs: Array[B]): Unit
    Definition Classes
    TraversableOnce → GenTraversableOnce
  23. def copyToArray[B >: (K, V)](xs: Array[B], start: Int): Unit
    Definition Classes
    TraversableOnce → GenTraversableOnce
  24. def copyToBuffer[B >: (K, V)](dest: Buffer[B]): Unit
    Definition Classes
    TraversableOnce
  25. def count(p: ((K, V)) ⇒ Boolean): Int
    Definition Classes
    TraversableOnce → GenTraversableOnce
  26. def drop(n: Int): Iterable[(K, V)]
    Definition Classes
    IterableLike → TraversableLike → GenTraversableLike
  27. def dropRight(n: Int): Iterable[(K, V)]
    Definition Classes
    IterableLike
  28. def dropWhile(p: ((K, V)) ⇒ Boolean): Iterable[(K, V)]
    Definition Classes
    TraversableLike → GenTraversableLike
  29. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  30. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  31. def exists(p: ((K, V)) ⇒ Boolean): Boolean
    Definition Classes
    IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
  32. def filter(p: ((K, V)) ⇒ Boolean): Iterable[(K, V)]
    Definition Classes
    TraversableLike → GenTraversableLike
  33. def filterNot(p: ((K, V)) ⇒ Boolean): Iterable[(K, V)]
    Definition Classes
    TraversableLike → GenTraversableLike
  34. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  35. def find(p: ((K, V)) ⇒ Boolean): Option[(K, V)]
    Definition Classes
    IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
  36. def flatMap[B, That](f: ((K, V)) ⇒ GenTraversableOnce[B])(implicit bf: CanBuildFrom[Iterable[(K, V)], B, That]): That
    Definition Classes
    TraversableLike → GenTraversableLike → FilterMonadic
  37. def flatten[B](implicit asTraversable: ((K, V)) ⇒ GenTraversableOnce[B]): Iterable[B]
    Definition Classes
    GenericTraversableTemplate
  38. def fold[A1 >: (K, V)](z: A1)(op: (A1, A1) ⇒ A1): A1
    Definition Classes
    TraversableOnce → GenTraversableOnce
  39. def foldLeft[B](z: B)(op: (B, (K, V)) ⇒ B): B
    Definition Classes
    TraversableOnce → GenTraversableOnce
  40. def foldRight[B](z: B)(op: ((K, V), B) ⇒ B): B
    Definition Classes
    IterableLike → TraversableOnce → GenTraversableOnce
  41. def forall(p: ((K, V)) ⇒ Boolean): Boolean
    Definition Classes
    IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
  42. def foreach[U](f: ((K, V)) ⇒ U): Unit
    Definition Classes
    IterableLike → TraversableLike → GenTraversableLike → TraversableOnce → GenTraversableOnce → FilterMonadic
  43. def genericBuilder[B]: Builder[B, Iterable[B]]
    Definition Classes
    GenericTraversableTemplate
  44. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  45. def groupBy[K](f: ((K, V)) ⇒ K): Map[K, Iterable[(K, V)]]
    Definition Classes
    TraversableLike → GenTraversableLike
  46. def grouped(size: Int): Iterator[Iterable[(K, V)]]
    Definition Classes
    IterableLike
  47. var grow: (Int) ⇒ Unit
    Attributes
    protected
  48. def hasDefiniteSize: Boolean
    Definition Classes
    TraversableLike → TraversableOnce → GenTraversableOnce
  49. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  50. def head: (K, V)
    Definition Classes
    IterableLike → TraversableLike → GenTraversableLike
  51. def headOption: Option[(K, V)]
    Definition Classes
    TraversableLike → GenTraversableLike
  52. def init: Iterable[(K, V)]
    Definition Classes
    TraversableLike → GenTraversableLike
  53. def inits: Iterator[Iterable[(K, V)]]
    Definition Classes
    TraversableLike
  54. def isEmpty: Boolean
    Definition Classes
    IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
  55. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  56. final def isTraversableAgain: Boolean
    Definition Classes
    TraversableLike → GenTraversableLike → GenTraversableOnce
  57. def iterator: Iterator[(K, V)]
    Definition Classes
    OpenHashMap → IterableLike → GenIterableLike
  58. def last: (K, V)
    Definition Classes
    TraversableLike → GenTraversableLike
  59. def lastOption: Option[(K, V)]
    Definition Classes
    TraversableLike → GenTraversableLike
  60. def map[B, That](f: ((K, V)) ⇒ B)(implicit bf: CanBuildFrom[Iterable[(K, V)], B, That]): That
    Definition Classes
    TraversableLike → GenTraversableLike → FilterMonadic
  61. def max[B >: (K, V)](implicit cmp: Ordering[B]): (K, V)
    Definition Classes
    TraversableOnce → GenTraversableOnce
  62. def maxBy[B](f: ((K, V)) ⇒ B)(implicit cmp: Ordering[B]): (K, V)
    Definition Classes
    TraversableOnce → GenTraversableOnce
  63. def min[B >: (K, V)](implicit cmp: Ordering[B]): (K, V)
    Definition Classes
    TraversableOnce → GenTraversableOnce
  64. def minBy[B](f: ((K, V)) ⇒ B)(implicit cmp: Ordering[B]): (K, V)
    Definition Classes
    TraversableOnce → GenTraversableOnce
  65. def mkString: String
    Definition Classes
    TraversableOnce → GenTraversableOnce
  66. def mkString(sep: String): String
    Definition Classes
    TraversableOnce → GenTraversableOnce
  67. def mkString(start: String, sep: String, end: String): String
    Definition Classes
    TraversableOnce → GenTraversableOnce
  68. var move: (Int, Int) ⇒ Unit
    Attributes
    protected
  69. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  70. def newBuilder: Builder[(K, V), Iterable[(K, V)]]
    Attributes
    protected[this]
    Definition Classes
    GenericTraversableTemplate → HasNewBuilder
  71. def nonEmpty: Boolean
    Definition Classes
    TraversableOnce → GenTraversableOnce
  72. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  73. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  74. def par: ParIterable[(K, V)]
    Definition Classes
    Parallelizable
  75. def parCombiner: Combiner[(K, V), ParIterable[(K, V)]]
    Attributes
    protected[this]
    Definition Classes
    TraversableLike → Parallelizable
  76. def partition(p: ((K, V)) ⇒ Boolean): (Iterable[(K, V)], Iterable[(K, V)])
    Definition Classes
    TraversableLike → GenTraversableLike
  77. def product[B >: (K, V)](implicit num: Numeric[B]): B
    Definition Classes
    TraversableOnce → GenTraversableOnce
  78. def reduce[A1 >: (K, V)](op: (A1, A1) ⇒ A1): A1
    Definition Classes
    TraversableOnce → GenTraversableOnce
  79. def reduceLeft[B >: (K, V)](op: (B, (K, V)) ⇒ B): B
    Definition Classes
    TraversableOnce
  80. def reduceLeftOption[B >: (K, V)](op: (B, (K, V)) ⇒ B): Option[B]
    Definition Classes
    TraversableOnce → GenTraversableOnce
  81. def reduceOption[A1 >: (K, V)](op: (A1, A1) ⇒ A1): Option[A1]
    Definition Classes
    TraversableOnce → GenTraversableOnce
  82. def reduceRight[B >: (K, V)](op: ((K, V), B) ⇒ B): B
    Definition Classes
    IterableLike → TraversableOnce → GenTraversableOnce
  83. def reduceRightOption[B >: (K, V)](op: ((K, V), B) ⇒ B): Option[B]
    Definition Classes
    TraversableOnce → GenTraversableOnce
  84. def repr: Iterable[(K, V)]
    Definition Classes
    TraversableLike → GenTraversableLike
  85. def reversed: List[(K, V)]
    Attributes
    protected[this]
    Definition Classes
    TraversableOnce
  86. def sameElements[B >: (K, V)](that: GenIterable[B]): Boolean
    Definition Classes
    IterableLike → GenIterableLike
  87. def scan[B >: (K, V), That](z: B)(op: (B, B) ⇒ B)(implicit cbf: CanBuildFrom[Iterable[(K, V)], B, That]): That
    Definition Classes
    TraversableLike → GenTraversableLike
  88. def scanLeft[B, That](z: B)(op: (B, (K, V)) ⇒ B)(implicit bf: CanBuildFrom[Iterable[(K, V)], B, That]): That
    Definition Classes
    TraversableLike → GenTraversableLike
  89. def scanRight[B, That](z: B)(op: ((K, V), B) ⇒ B)(implicit bf: CanBuildFrom[Iterable[(K, V)], B, That]): That
    Definition Classes
    TraversableLike → GenTraversableLike
    Annotations
    @migration
    Migration

    (Changed in version 2.9.0) The behavior of scanRight has changed. The previous behavior can be reproduced with scanRight.reverse.

  90. def seq: Iterable[(K, V)]
    Definition Classes
    Iterable → GenIterable → Traversable → GenTraversable → Parallelizable → TraversableOnce → GenTraversableOnce
  91. def size: Int
    Definition Classes
    OpenHashMap → GenTraversableLike → TraversableOnce → GenTraversableOnce
  92. def sizeHintIfCheap: Int
    Attributes
    protected[scala.collection]
    Definition Classes
    GenTraversableOnce
  93. def slice(from: Int, until: Int): Iterable[(K, V)]
    Definition Classes
    IterableLike → TraversableLike → GenTraversableLike
  94. def sliding(size: Int, step: Int): Iterator[Iterable[(K, V)]]
    Definition Classes
    IterableLike
  95. def sliding(size: Int): Iterator[Iterable[(K, V)]]
    Definition Classes
    IterableLike
  96. def span(p: ((K, V)) ⇒ Boolean): (Iterable[(K, V)], Iterable[(K, V)])
    Definition Classes
    TraversableLike → GenTraversableLike
  97. def splitAt(n: Int): (Iterable[(K, V)], Iterable[(K, V)])
    Definition Classes
    TraversableLike → GenTraversableLike
  98. def stringPrefix: String
    Definition Classes
    TraversableLike → GenTraversableLike
  99. def sum[B >: (K, V)](implicit num: Numeric[B]): B
    Definition Classes
    TraversableOnce → GenTraversableOnce
  100. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  101. def tail: Iterable[(K, V)]
    Definition Classes
    TraversableLike → GenTraversableLike
  102. def tails: Iterator[Iterable[(K, V)]]
    Definition Classes
    TraversableLike
  103. def take(n: Int): Iterable[(K, V)]
    Definition Classes
    IterableLike → TraversableLike → GenTraversableLike
  104. def takeRight(n: Int): Iterable[(K, V)]
    Definition Classes
    IterableLike
  105. def takeWhile(p: ((K, V)) ⇒ Boolean): Iterable[(K, V)]
    Definition Classes
    IterableLike → TraversableLike → GenTraversableLike
  106. def thisCollection: Iterable[(K, V)]
    Attributes
    protected[this]
    Definition Classes
    IterableLike → TraversableLike
  107. def to[Col[_]](implicit cbf: CanBuildFrom[Nothing, (K, V), Col[(K, V)]]): Col[(K, V)]
    Definition Classes
    TraversableLike → TraversableOnce → GenTraversableOnce
  108. def toArray[B >: (K, V)](implicit arg0: ClassTag[B]): Array[B]
    Definition Classes
    TraversableOnce → GenTraversableOnce
  109. def toBuffer[B >: (K, V)]: Buffer[B]
    Definition Classes
    TraversableOnce → GenTraversableOnce
  110. def toCollection(repr: Iterable[(K, V)]): Iterable[(K, V)]
    Attributes
    protected[this]
    Definition Classes
    IterableLike → TraversableLike
  111. def toIndexedSeq: IndexedSeq[(K, V)]
    Definition Classes
    TraversableOnce → GenTraversableOnce
  112. def toIterable: Iterable[(K, V)]
    Definition Classes
    IterableLike → TraversableOnce → GenTraversableOnce
  113. def toIterator: Iterator[(K, V)]
    Definition Classes
    IterableLike → TraversableLike → GenTraversableOnce
    Annotations
    @deprecatedOverriding( ... , "2.11.0" )
  114. def toList: List[(K, V)]
    Definition Classes
    TraversableOnce → GenTraversableOnce
  115. def toMap[T, U](implicit ev: <:<[(K, V), (T, U)]): Map[T, U]
    Definition Classes
    TraversableOnce → GenTraversableOnce
  116. def toSeq: Seq[(K, V)]
    Definition Classes
    TraversableOnce → GenTraversableOnce
  117. def toSet[B >: (K, V)]: Set[B]
    Definition Classes
    TraversableOnce → GenTraversableOnce
  118. def toStream: Stream[(K, V)]
    Definition Classes
    IterableLike → TraversableLike → GenTraversableOnce
  119. def toString(): String
    Definition Classes
    TraversableLike → Any
  120. def toTraversable: Traversable[(K, V)]
    Definition Classes
    TraversableLike → TraversableOnce → GenTraversableOnce
    Annotations
    @deprecatedOverriding( ... , "2.11.0" )
  121. def toVector: Vector[(K, V)]
    Definition Classes
    TraversableOnce → GenTraversableOnce
  122. def transpose[B](implicit asTraversable: ((K, V)) ⇒ GenTraversableOnce[B]): Iterable[Iterable[B]]
    Definition Classes
    GenericTraversableTemplate
    Annotations
    @migration
    Migration

    (Changed in version 2.9.0) transpose throws an IllegalArgumentException if collections are not uniformly sized.

  123. def unzip[A1, A2](implicit asPair: ((K, V)) ⇒ (A1, A2)): (Iterable[A1], Iterable[A2])
    Definition Classes
    GenericTraversableTemplate
  124. def unzip3[A1, A2, A3](implicit asTriple: ((K, V)) ⇒ (A1, A2, A3)): (Iterable[A1], Iterable[A2], Iterable[A3])
    Definition Classes
    GenericTraversableTemplate
  125. def update(k: K, v: V): Unit

    Set the value for a key

  126. def view(from: Int, until: Int): IterableView[(K, V), Iterable[(K, V)]]
    Definition Classes
    IterableLike → TraversableLike
  127. def view: IterableView[(K, V), Iterable[(K, V)]]
    Definition Classes
    IterableLike → TraversableLike
  128. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  129. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  130. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  131. def withFilter(p: ((K, V)) ⇒ Boolean): FilterMonadic[(K, V), Iterable[(K, V)]]
    Definition Classes
    TraversableLike → FilterMonadic
  132. def zip[A1 >: (K, V), B, That](that: GenIterable[B])(implicit bf: CanBuildFrom[Iterable[(K, V)], (A1, B), That]): That
    Definition Classes
    IterableLike → GenIterableLike
  133. def zipAll[B, A1 >: (K, V), That](that: GenIterable[B], thisElem: A1, thatElem: B)(implicit bf: CanBuildFrom[Iterable[(K, V)], (A1, B), That]): That
    Definition Classes
    IterableLike → GenIterableLike
  134. def zipWithIndex[A1 >: (K, V), That](implicit bf: CanBuildFrom[Iterable[(K, V)], (A1, Int), That]): That
    Definition Classes
    IterableLike → GenIterableLike

Deprecated Value Members

  1. def /:[B](z: B)(op: (B, (K, V)) ⇒ B): B
    Definition Classes
    TraversableOnce → GenTraversableOnce
    Annotations
    @deprecated
    Deprecated

    (Since version 2.12.10) Use foldLeft instead of /:

  2. def :\[B](z: B)(op: ((K, V), B) ⇒ B): B
    Definition Classes
    TraversableOnce → GenTraversableOnce
    Annotations
    @deprecated
    Deprecated

    (Since version 2.12.10) Use foldRight instead of :\

Inherited from Serializable

Inherited from Serializable

Inherited from Iterable[(K, V)]

Inherited from IterableLike[(K, V), Iterable[(K, V)]]

Inherited from Equals

Inherited from GenIterable[(K, V)]

Inherited from GenIterableLike[(K, V), Iterable[(K, V)]]

Inherited from Traversable[(K, V)]

Inherited from GenTraversable[(K, V)]

Inherited from GenericTraversableTemplate[(K, V), Iterable]

Inherited from TraversableLike[(K, V), Iterable[(K, V)]]

Inherited from GenTraversableLike[(K, V), Iterable[(K, V)]]

Inherited from Parallelizable[(K, V), ParIterable[(K, V)]]

Inherited from TraversableOnce[(K, V)]

Inherited from GenTraversableOnce[(K, V)]

Inherited from FilterMonadic[(K, V), Iterable[(K, V)]]

Inherited from HasNewBuilder[(K, V), Iterable[(K, V)] @scala.annotation.unchecked.uncheckedVariance]

Inherited from AnyRef

Inherited from Any

Ungrouped