Tag: 运算符 关键字

斯卡拉的“::”运算符,它是如何工作的?

在Scala中,我可以创buildcaseclass, case class Foo(x:Int) ,然后将它放在如下所示的列表中: List(Foo(42)) 现在,这里没什么奇怪的。 以下对我来说很陌生。 operator ::是一个列表上的函数,对吗? 在Scala中有一个参数的函数,我可以用中缀表示法来调用它。 一个例子是1 + 2是对象Int上的函数(+) 。 我刚才定义的Foo类没有::运算符,那么下面是如何可能的? Foo(40) :: List(Foo(2)) 在Scala 2.8 RC1中,我从交互式提示中得到以下输出: scala> case class Foo(x:Int) defined class Foo scala> Foo(40) :: List(Foo(2)) res2: List[Foo] = List(Foo(40), Foo(2)) 我可以继续使用它,但是解释是什么?