Я хочу исчерпывающе сгруппировать последовательность по enum, что означает, что если последовательность содержит 0 вхождений enum, все равно включите ее в группировку.
Например, если у меня есть перечисление типа
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
не отображается как группа.