Я создаю список различных объектов класса case на основе цикла и соответствия шаблона. Я хочу исключить (пропустить) элементы, ударяющие случай по умолчанию (по существу, фильтрацию списка и сопоставление типов в один шаг).
Я, вероятно, слишком новичок в Scala, чтобы увидеть все возможности. Моя попытка:
val events = for (ev <- data ) yield {
ev.sport match {
case "FOOTBALL" => new FootballEvent(ev)
case "SOCCER" => new SoccerEvent(ev)
case _ => None
}
}
Затем я мог бы фильтровать список, но я подозреваю, что есть способ Scala сделать это:)
Пожалуйста, дайте мне знать, если у вас есть представление о том, как это лучше всего сделать!