scala – HashSet和Set之间有什么区别,何时应该是每个
HashSet和Set之间有什么区别,何时应该使用?这里的地图vs HashMap:
val hashSet = HashSet("Tomatoes","Chilies") val set = Set("Tomatoes","Chilies") set == hashSet // res: Boolean = true 解决方法
集是一个特质.您可以通过调用其伴随对象的apply方法来创建Set的实例,该方法返回默认的不可变的Set的实例.例如:
val defaultSet = Set("A","B") HashSet是一个具体的实现,可以实例化如下: val hashSet = HashSet("A","B") 看看“Scala中的编程”的引用,解释了各种实现之间的区别:
Number of elements Implementation 0 scala.collection.immutable.EmptySet 1 scala.collection.immutable.Set1 2 scala.collection.immutable.Set2 3 scala.collection.immutable.Set3 4 scala.collection.immutable.Set4 5 or more scala.collection.immutable.HashSet 这意味着对于具有5个或更多元素的不可变集合,您的两个调用都应该返回同一个Set子类的实例. 地图同样如此.请参阅this链接. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |