java - 如何将实现 java.lang.Comparable 的类转换为实现 Scala.Ordered?

标签 java scala programming-languages interop comparison

正在将 extends Comparable[A] 重命名为 extends Ordered[A] 并将 def compareTo 重命名为 def compare 够了还是有什么我应该注意的?

最佳答案

你是对的,这就是你需要做的。 Ordered 中的其他方法将使用它们的默认实现,如下所示:

def <  (that: A): Boolean = (this compare that) <  0
def >  (that: A): Boolean = (this compare that) >  0
def <= (that: A): Boolean = (this compare that) <= 0
def >= (that: A): Boolean = (this compare that) >= 0
def compareTo(that: A): Int = compare(that)

Ordered 中唯一没有默认实现的是比较,您将使用旧的 compareTo 方法定义它。应该有效,前提是以上是您想要进行其他比较的内容。

关于java - 如何将实现 java.lang.Comparable 的类转换为实现 Scala.Ordered?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4519678/

相关文章:

scala 未指定值参数

visual-c++ - 基本代码布局问题

java - 通过 tcp 流式传输语音

Scala 在类中定义方法而不是在伴随对象上定义方法有什么区别

java - 有没有像 MaintainJ for IntelliJ 这样的工具

scala - 从连接两个数据帧的 Spark SQL 中删除重复项

programming-languages - 高级语言应该/将达到多高?

programming-languages - Swift 中带和不带 @ 的关键字

java - RxJava-如何背压平面图()

java - 在java中创建消息ID