scala中的Nil
是否等效Set
?
我尝试使用Nil
作为Set
的值,但我收到了错误(由于Nil
的类型为List
,因此预计会发生错误)
由于
答案 0 :(得分:36)
Set.empty
就是那个集合;虽然你无法直接得到它,但事实证明它只是Set
伴侣对象中的一个私有对象(显然,称为EmptySet
)。 Set.empty
所做的就是将使用强制转换的集合返回到正确的类型。
这是以这种方式完成的,而不是使用Nil
,因为在参数中,集合是不变的。 Nil
为List[Nothing]()
,但您无法向Set[Nothing]()
添加任何内容。
如果您需要指定空集的类型,可以使用例如Set.empty[String]
。
答案 1 :(得分:12)
您可以使用Set.empty
或仅使用Set()
。
答案 2 :(得分:7)
我认为您正在寻找Set.empty