在许多Apache Spark代码示例中,我们可以使用以下代码
val input = sc.hadoopFile[Text, Text, KeyValueTextInputFormat](inputFile).map{
case (x, y) => (x.toString, y.toString)
}
有人可以在这里解释case (x,y)
的用法吗?我知道使用case语句进行类创建和模式匹配。但是,我无法在此处了解地图功能中case (x,y
的用户。
答案 0 :(得分:2)
它只是一种使用模式匹配的函数文字形式。你也可以写map { i => i match { case (x, y) => (x.toString, y.toString) } }
。请参阅Programming in Scala, "case
sequences as partial functions"。