这是我的一些失败尝试:
import com.google.common.collect.HashMultiset
// 1. This does not work!
// val foo1:HashMultiset[Int] = HashMultiset[Int].create()
// 2. Neither does this!
// val foo2:HashMultiset[Int] = new HashMultiset[Int]()
// foo1.add(1)
在第一种情况下,它抱怨HashMultiset不是值。
在第二种情况下,它说HashMultiset [Int]没有构造函数。
为了使用Scala中的这个番石榴类,我还需要做一些其他的事情吗?
UPDATE0:我将Scala 2.11.2与Guava 18.0一起使用,以防万一!
最佳答案
HashMultiset[Int].create()
的问题在于,尽管HashMultiset
是带有类型参数的类,但create
是静态方法。调用静态方法时,不要在类名上使用类型参数。因此,HashMultiset.create()
应该足够了。我假设create
方法确实具有类型参数,因此编写HashMultiset.create[Int]()
是有效的。