请参阅以下具有隐式返回类型的函数定义:
scala> def getIn(nodes:NodeSeq, path:String) = {
| nodes map {node => node \ path}
| }
getIn: (nodes: scala.xml.NodeSeq, path: String)scala.collection.immutable.Seq[scala.xml.NodeSeq]
但是,如果函数显式定义了相同的返回类型,则会发生错误:
scala> def getIn(nodes:NodeSeq, path:String) = Seq[NodeSeq] {
| nodes map {node => node \ path}
| }
<console>:9: error: type mismatch;
found : scala.collection.immutable.Seq[scala.xml.NodeSeq]
required: scala.xml.NodeSeq
nodes map {node => node \ path}
我无法理解为什么会发生错误。请帮我。