所以我想做的是将Traversable
中的特定值映射到其他内容。为了说明,
scala> Seq("hello", "\\N", "world").map { s =>
| s match {
| case "\\N" => null
| case _ => s
| }
| }
res1: Seq[String] = List(hello, null, world)
虽然这有效,但它需要的线路比我想要的多得多。是否有简要的简写来实现同样的目标?
答案 0 :(得分:0)
Seq("hello","\\N","world").map(s => if (s == "\\N") null else s)
答案 1 :(得分:0)
定义Map
个替换,
val m = Map("\\N" -> (null:String))
因此,如果未在Map
中声明,则从Map
或原始值获取替换值,
Seq("hello", "\\N", "world").map(v => m.getOrElse(v,v))