为什么这在 scala 中不起作用?
type IntSet = scala.collection.immutable.Set[Int]
IntSet(1)
Run Code Online (Sandbox Code Playgroud)
我收到“未找到 IntSet”
谢谢。
请记住,这IntSet(1)相当于IntSet.apply(1),其中IntSet是一个对象,而不是一个类/特征。
问题是您已经为Set[A] Trait定义了别名,但没有为其伴生对象定义别名。
如果您想apply使用类型别名IntSet,则还必须定义一个名为的对象IntSet。
object IntSet {
def apply[A](elems: Int*): IntSet = Set(elems: _*)
}
Run Code Online (Sandbox Code Playgroud)
现在将编译:
IntSet(1)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
406 次 |
| 最近记录: |