cou*_*ech 5 scala type-parameter
我想做一个接受任何订购和打印更多的课程.(我只是在学习,所以我知道它有点无用)
class PrinterOfGreater[T extends Ordered](val a:T, val b:T){println(a > b)}
Run Code Online (Sandbox Code Playgroud)
我知道它不能用scala中的这种风格写出来,但我不知道怎么写得恰到好处......有人知道吗?
为什么这不编译?乳清字符串包装器是Ordered
class PrinterOfGreater[T <: Ordered[T]](a:T, b:T){println(a > b)}
object A extends Application{new PrinterOfGreater("abc","abd")}
Run Code Online (Sandbox Code Playgroud)
关于你的第二个问题:( String在Scala中java.lang.String,至少在定位Java/JVM平台时)没有定义关系运算符>.但是,您可以通过替换指定所谓的视图边界的<:with <%来轻松地容纳这一点,这意味着in 是子类型或者在范围内存在隐式转换,在给定的时候会产生.A <% B ABBA
这适用于String因为Scala的标准库提供的隐式从字符串转换到RichString(Scala中2.7)或StringOps(Scala中2.8),其中关系运算符被定义.
| 归档时间: |
|
| 查看次数: |
3283 次 |
| 最近记录: |