【发布时间】:2021-10-05 02:20:12
【问题描述】:
代码示例:(在 iPad 上,抱歉图片不是文字)
在这个例子中[(int,double),double] 代表什么?
我找不到有关它的文档...
为什么函数中有case 关键字?
和 Javascript 一样,在箭头函数中,case 关键字不是必需的。
【问题讨论】:
标签: scala apache-spark spark-streaming
代码示例:(在 iPad 上,抱歉图片不是文字)
在这个例子中[(int,double),double] 代表什么?
我找不到有关它的文档...
为什么函数中有case 关键字?
和 Javascript 一样,在箭头函数中,case 关键字不是必需的。
【问题讨论】:
标签: scala apache-spark spark-streaming
看来sims 的类型是(Int, Double)(一个元组)。
Ordering.by签名是
def by[T, S](f: T => S)(implicit ord: Ordering[S]): Ordering[T] = new Ordering[T] {
T 是 (Int, Double) 是 id
S 是 Double 是 similarity
因此,您的函数根据similarity 的值进行排序。
这里的case是用来提取元组的不同值的。否则,您的功能将是
Ordering.by[(Int, Double, Double)]( v => v._2) // 2nd element of the tuple == similarity
【讨论】: