-1

Scala compiler throws compilation error for the following

case class UserSession(userEvents: CircularFifoQueue<UserEvent>)

Following error messages are from Scala REPL:

$scala -cp Downloads/commons-collections4-4.1.jar 
Welcome to Scala 2.11.8 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_131).
Type in expressions for evaluation. Or try :help.

scala> import org.apache.commons.collections4.queue.CircularFifoQueue;
import org.apache.commons.collections4.queue.CircularFifoQueue

scala> case class UserSession(userEvents: CircularFifoQueue<UserEvent>)
<console>:1: error: identifier expected but ')' found.
case class UserSession(userEvents: CircularFifoQueue<UserEvent>)
                                                               ^

scala> case class UserSession(userEvents: CircularFifoQueue<int>)
<console>:1: error: identifier expected but ')' found.
case class UserSession(userEvents: CircularFifoQueue<int>)
4

1 回答 1

1

用于[]scala 中的泛型而不是钻石(<>),这是 java 的东西。

应该是这样case class UserSession(userEvents: CircularFifoQueue[UserEvent])

简单的泛型示例,

scala> class Bag[T]
defined trait Bag

scala> case class Apple()
defined class Apple

scala> new Bag[Apple]()
res4: Bag[Apple] = Bag@1ef93e01

资源

http://www.scala-lang.org/old/node/113

于 2017-06-14T03:16:10.990 回答