单右箭头(→)对Scala中的集合意味着什么?

时间:2018-04-20 20:27:21

标签: scala collections scala-collections

当我在InteliJ上的列表上使用自动完成时,它会显示一个单右箭头,没有关于它意味着什么的文档。它看起来像→。在一个例子中,它被称为:

val sampleList: List[String] = List("a", "b", "c");
sampleList.→()

我不知道括号中的内容,我也不能像火花地图一样使用它,因此s => s显示错误。在Scala文档online上,箭头运算符未列出。

这就是它在自动完成时的显示方式 enter image description here

此箭头运算符的示例用法是什么?

1 个答案:

答案 0 :(得分:13)

->没有专门针对集合定义,它是在Any上定义的(通过隐式类ArrowAssoc)。您可以在Predef.scala中看到其定义。

这是创建Tuple2

的替代语法
scala> 1 -> 2
res0: (Int, Int) = (1,2)

scala> List().->(2)
res1: (List[Nothing], Int) = (List(),2)

scala> (1 -> 2) == ((1, 2))
res2: Boolean = true