次のシグネチャを持つメソッドがある場合:
def max[T <% Ordered[T]](list:List[T]): T={
//return max. element of List (for example)
}
そして私はそれにこのようなペアのリストを与えたいと思います:
val fu:List[Pair[String, Double]] = List(Pair("a", 3.1),Pair("b", 1.7),Pair("c", 3.1),Pair("d", 5.4))
リストの2番目の要素で順序を定義して、関数でそれを操作できるようにするにはどうすればよいですか?
使ってみました
implicit def wrapper(p: Pair[String, Double])=new runtime.RichDouble(p._2)
ペアのDoubleをRichDoubleに暗黙的に変換します。これにより、順序付けられた特性が拡張されますが、これは機能しません。