2016-11-09 84 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