我正在尝试通过执行以下操作在Scala中创建一个Queue:
import scala.collection.immutable.Queue
val empty = new Queue[Int]
但是我收到一条错误,指出Queue构造函数受到保护。如果是这样的话,我错过了什么吗?所有Queue方法似乎都已定义并正常工作。我必须真正扩展Queue类,没有理由只使用队列吗?
答案 0 :(得分:15)
对于空队列,请使用随播对象:
val empty = Queue.empty[Int]
答案 1 :(得分:3)
使用其中一个工厂:
scala.collection.immutable.Queue()
scala.collection.immutable.Queue.empty
请注意,不可变队列是共变体,因此您通常不需要为其定义类型。一个例外是var
声明。
答案 2 :(得分:0)
scala> val empty = Queue [Int]()
empty: scala.collection.immutable.Queue[Int] = Queue()