merged
方法(或屬性)屬於 scala.collection.immutable.HashMap
類(class),其相關用法說明如下。
用法:
def merged[V1 >: V](that: HashMap[K, V1])(mergef: ((K, V), (K, V1)) => (K, V1)): HashMap[K, V1]
通過組合兩個映射的所有鍵值對並將這個HashMap 與另一個HashMap 合並,並委托給一個合並函數來解決兩個 HashMap 之間的任何鍵衝突。
值參數:
- mergef
解決兩個 HashMap 之間衝突的合並函數。如果
mergef
為空,則來自this
的鍵將覆蓋來自that
的鍵,使行為等同於that.concat(this)
- that
HashMap 將此 HashMap 與
注意:
如果
mergef
返回的鍵本身與merge
返回的其他鍵發生衝突,或者在this
或that
中找到,則未定義將選擇哪個值.例如:碰撞多個合並結果:// key `3` collides between a result of merging keys `1` and `2` val left = HashMap(1 -> 1, 2 -> 2) val right = HashMap(1 -> 1, 2 -> 2) val merged = left.merged(right){ case (_, (_, v1)) => 3 -> v1 } // HashMap(3 -> 2) is returned, but it could also have returned HashMap(3 -> 1)
與其他鍵合並的碰撞結果:
// key `2` collides between a result of merging `1`, and existing key `2` val left = HashMap(1 -> 1, 2 -> 1) val right = HashMap(1 -> 2) val merged = left.merged(right)((_,_) => 2 -> 3) // HashMap(2 -> 1) is returned, but it could also have returned HashMap(2 -> 3)
例子:
val left = HashMap(1 -> 1, 2 -> 1) val right = HashMap(2 -> 2, 3 -> 2) val merged = left.merged(right){ case ((k0, v0), (k1, v1)) => (k0 + k1) -> (v0 + v1) } // HashMap(1 -> 1, 3 -> 2, 4 -> 3)
源碼:
- HashMap.scala
相關用法
- Scala HashMap.mkString用法及代碼示例
- Scala HashMap.groupMapReduce用法及代碼示例
- Scala HashMap.scanRight用法及代碼示例
- Scala HashMap.sizeIs用法及代碼示例
- Scala HashMap.equals用法及代碼示例
- Scala HashMap.runWith用法及代碼示例
- Scala HashMap.tails用法及代碼示例
- Scala HashMap.sliding用法及代碼示例
- Scala HashMap.groupBy用法及代碼示例
- Scala HashMap.elementWise用法及代碼示例
- Scala HashMap.inits用法及代碼示例
- Scala HashMap.addString用法及代碼示例
- Scala HashMap.sizeCompare用法及代碼示例
- Scala HashMap.groupMap用法及代碼示例
- Scala HashMap.transpose用法及代碼示例
- Scala HashMap.lazyZip用法及代碼示例
- Scala HashMap.collectFirst用法及代碼示例
- Scala HashSet.sliding用法及代碼示例
- Scala HashSet.collectFirst用法及代碼示例
- Scala HashSet.sizeCompare用法及代碼示例
- Scala HashSet.lazyZip用法及代碼示例
- Scala HashSet.inits用法及代碼示例
- Scala HashSet.concat用法及代碼示例
- Scala HashSet.equals用法及代碼示例
- Scala HashSet.sizeIs用法及代碼示例
注:本文由純淨天空篩選整理自scala-lang.org大神的英文原創作品 HashMap.merged。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。