代码之家  ›  专栏  ›  技术社区  ›  mkUltra

为什么LocalDate不实现Compariable<LocalDate>?

  •  2
  • mkUltra  · 技术社区  · 7 年前

    初始问题:

    斯卡拉 ,我想使用隐式 Ordering[T]#Ops 比较 LocalDate .

    > 而不是 isAfter

    它应该只是一个导入: import scala.math.Ordering.Implicits._

    检查:

    LocalTime 这与我无关 本地日期 因为 当地时间 而不是 本地日期 工具 Comparable<LocalTime> .

    我想知道,

    为什么? 工具 Comparable<ChronoLocalDate> 而不是 Comparable<LocalDate>

    2 回复  |  直到 7 年前
        1
  •  9
  •   deHaar    7 年前

    LocalDate implements Comparable<ChronoLocalDate> 以及 ChronoLocalDate 通过实现这两个,它的每一个实例当然都可以与另一个进行比较 本地日期

    你可以看一看 JavaDocs for LocalDate

    ChronoLocalDate JapaneseDate , ThaiBuddhistDate , HijrahDate 至少还有一个。完全不同的日历,都可以相互比较,这很好。 LocalTime

        2
  •  3
  •   Alexey Romanov    7 年前

    要使操作符工作,除了导入之外,您只需要另一行,定义所需的 Ordering

    implicit val localDateOrdering: Ordering[LocalDate] = _.compareTo(_)
    

    如果要在许多类中使用它,请在 object