【发布时间】:2020-03-02 22:38:54
【问题描述】:
我想通过枚举对序列进行详尽的分组,这意味着如果序列中包含 0 个枚举,则无论如何都将其包含在分组中。
例如,如果我有一个类似的枚举
object Color extends Enumeration {
type Color = Value
val Red, Green, Blue = Value
}
使用枚举的对象
case class Furniture (
name: String,
color: Color.Value
)
对象列表
val furnitures = Seq(
Furniture("Chair", Color.Red),
Furniture("Table", Color.Red),
Furniture("Bed", Color.Blue),
Furniture("Sofa", Color.Blue)
)
我如何将furnitures 按Color 分组,例如:
Map(
Color.Red -> List(Furniture("Chair", Color.Red), Furniture("Table", Color.Red)),
Color.Green -> List(),
Color.Blue -> List(Furniture("Bed", Color.Blue), Furniture("Sofa", Color.Blue))
)
使用Seq.groupBy 方法,Color.Green 不会显示为一个组。
【问题讨论】:
标签: scala enums sequence scala-collections