Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 如果关键点重复,映射如何决定拾取哪个值_Scala - Fatal编程技术网

Scala 如果关键点重复,映射如何决定拾取哪个值

Scala 如果关键点重复,映射如何决定拾取哪个值,scala,Scala,我正在尝试下面的代码来学习地图收集。我注意到,如果“键”是重复的,“映射”选择值。编译器如何决定选择哪个值 //key 2 and 3 are duplicated and has different values val m3 = Map((2->"1"), (2->"2"), (3->"3"), (3->'4')) m3: scala.collection.immutable.Map[Int,Any] = Map(2 -> 2, 3 -> 4) //为什

我正在尝试下面的代码来学习地图收集。我注意到,如果“键”是重复的,“映射”选择值。编译器如何决定选择哪个值

//key 2 and 3 are duplicated and has different values
val m3 = Map((2->"1"), (2->"2"), (3->"3"), (3->'4'))
m3: scala.collection.immutable.Map[Int,Any] = Map(2 -> 2, 3 -> 4)

//为什么选择了“2”和“4”而不是“1”和“3”

它将使用最新的插入到地图中(将其视为UPSERT:update(如果密钥存在)或insert(如果密钥不存在)的等价物)。

它将使用最新的插入到地图中(将其视为UPSERT的等价物:如果密钥存在,则更新;如果密钥不存在,则插入到映射中)。

它们是按顺序创建的。第二个覆盖第一个。它们是按顺序创建的。第二个覆盖第一个。