【问题标题】:generic SortByValue based on Numeric基于 Numeric 的通用 SortByValue
【发布时间】:2015-11-11 00:06:17
【问题描述】:

如何为这两个用例创建一个隐式类?

  implicit class SortableByIntValue(rdd:RDD[(String,Int)]){
    def sortByValue = rdd.sortBy(_._2)
  }
  implicit class SortableByDoubleValue(rdd:RDD[(String,Double)]){
    def sortByValue = rdd.sortBy(_._2)
  }

【问题讨论】:

    标签: scala apache-spark generic-programming implicits


    【解决方案1】:

    试试这个:

    import scala.reflect.ClassTag
    
    implicit class SortableByValue[N : Numeric : ClassTag](rdd:RDD[(String,N)]){
      def sortByValue = rdd.sortBy(_._2)
    }
    

    如果需要,这应该可以扩展到任何有Ordering 可用的类型([O : Ordering] 而不是[N : Numeric])。

    【讨论】:

      猜你喜欢
      • 2015-09-09
      • 2014-08-28
      • 1970-01-01
      • 2011-11-14
      • 1970-01-01
      • 2016-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多