2016-11-09 67 views
0

我正尝试使用通用的,这里的类泛型类型收集整理操作

object Utils { 

    implicit class optionUtils(option: Option[Any]) { 
    def sortedList[T]:List[T] = { 
     val list:List[T] = option.get.asInstanceOf[List[T]] 
     list.sorted[T] 
    } 
    } 
} 

这里调用

jsonResponse.get("products").sortedList[String] 

创建一个隐含的类,但好像排序没有编制,编译器说。

Error:(8, 18) not enough arguments for method sorted: (implicit ord: scala.math.Ordering[T])List[T]. 
Unspecified value parameter ord. 
     list.sorted[T] 
      ^

任何想法如何使它的作品?

问候。

回答

4

您必须告诉编译器T仅限于可订购类型。

def sortedList[T: Ordering]:List[T] = { ... 
+0

哇!我永远不会意识到这一点,但现在我明白了,这有完整的意义,非常感谢! – paul