2017-05-05 161 views
-1

在Java 8時間API中,是否有一種方便的方法比較YearMonthLocalDate(或任何其他時態)?Java 8時間API:將YearMonth與LocalDate比較?

我想知道很多方法支持TemporalAccessors,無論我只是看錯了地方,確實存在這樣一種方便的方法。任何提示都非常感謝。

爲了使問題更清楚:如果我比較YearMonthLocalDate我只在monthyear比較(兩者的共同點)感興趣。

回答

1

將一個時間段包裝爲比較所需的公分母類型似乎相當方便,例如,對於具有LocalDateLocalDate比較一個YearMonth首先轉化爲YearMonth

LocalDate someDate = ... 
YearMonth someMonth = ... 

YearMonth.from(someDate).equals(someMonth) 

// or compareTo if required 

思考更多地瞭解它,它可能是有道理的,沒有一個通用的compare - 方法是比較具體的停留。不能保證有人只是想比較兩者的共同點。

+4

和你爲什麼要加入這個解釋作爲答案?你應該在你的問題的解釋中加入這個。 –

+0

因爲它是這個問題的答案。 – Roland

+0

@NeerajJain,有人在問幾分鐘後回答自己的問題,我不知道爲什麼,但通常認爲可以。 –

0

僅僅因爲LocalDate持有未在yearMont類中定義的天數的成員,YearMonth和LocalDate不能直接進行比較。

您可以編寫自己的

private boolean checkTemporal(YearMonth yM, LocalDate lD) { 

    return yM.getMonthValue() == lD.getMonthValue() && yM.getYear() == lD.getYear(); 
}