斯卡拉2.12。以下代码
val mapBuilder = Map.newBuilder[String, String]
val setBuilder = Set.newBuilder[String]
List(Option("")).foreach {
case Some(_) => mapBuilder += "" -> ""
case None => setBuilder += ""
}
不编译-编译器无法推断两个构建器({{1}中的U
)的最小上限:
foreach[U](f: A => U)
用type arguments [String,Iterable[java.io.Serializable] with String => Any with scala.collection.generic.Subtractable[String,Equals]] do not conform to trait Subtractable's type parameter bounds [A,+Repr <: scala.collection.generic.Subtractable[A,Repr]]
注释foreach
可解决问题:
Any
这是预期的行为吗?