我有一个以下scala特征的列表。如何将列表分成两部分,一个只包含ValidatedSbcCommand对象,另一个只包含FailedValidationSbcCommand对象?
sealed trait SbcCommandorOrValidationError
case class ValidatedSbcCommand(sbcCommand: SbcCommand) extends SbcC ommandorOrValidationError
case class FailedValidationSbcCommand(sbcCommandError: SbcCommandError) extends SbcCommandorOr发布于 2017-02-10 00:42:16
val result = originalList.foldRight(Tuple2(List[ValidatedSbcCommand](), List[FailedValidationSbcCommand]())){ (start, rest) =>
start match {
case a:ValidatedSbcCommand => (a::rest._1, rest._2)
case b:FailedValidationSbcCommand => (rest._1, b::rest._2)
case _ => rest
}
}然后result._1会给你一个ValidatedSbcCommand的列表,result._2会给你一个FailedValidationSbcCommand的列表。
https://stackoverflow.com/questions/42141724
复制相似问题