类型不匹配错误:找到SortedSet [Int],必需Set [Int]

时间:2012-12-21 22:04:50

标签: scala

假设我有以下代码:

case class Foo(x: SortedSet[String]) {
  def bar: Set[String] = x
}

(这是我实际代码的简化。)如果我尝试运行它,我会收到以下错误:

error: type mismatch;
found   : scala.collection.SortedSet[String]
required: Set[String]
   def bar: Set[String] = x

为什么会出现此错误?不是SortedSet[String] Set[String]的子商品吗?

1 个答案:

答案 0 :(得分:6)

Set is immutable.Set。

scala>  import scala.collection.immutable.SortedSet
import scala.collection.immutable.SortedSet

scala> :paste
// Entering paste mode (ctrl-D to finish)

case class Foo(x: SortedSet[String]) {
  def bar: Set[String] = x
}

// Exiting paste mode, now interpreting.

defined class Foo