【发布时间】:2018-11-14 23:19:50
【问题描述】:
此处的示例:Scastie Example
我不明白这是如何工作的。我有一个像这样的元组序列:
val v = Seq(
("provider@test.com",2),
("consumer@test.com",2),
("provider@test.com",9),
("provider@test.com",10)
)
我想像这样对它们进行分组:
v.groupBy{ case(email, id) => id }
这会导致:
Map(
2 -> List(
(provider@test.com,2),
(consumer@test.com,2)
),
10 -> List(
(provider@test.com,10)
),
9 -> List(
(provider@test.com,9)
)
)
这很有意义,但现在如果我像这样再次映射它们:
v.groupBy{ case(email, id) => id}.map{case(id, data) => data.head}.toSeq
我希望结果是:
Vector((provider@test.com,2), (provider@test.com,10), (provider@test.com,9))
但是我得到:
Vector((provider@test.com,9))
怎么了?
【问题讨论】:
标签: scala dictionary scala-collections