Kotlinの日時を比較するサンプルです。
目次
日時の比較 | 日にちを比較する(LocalDate) |
時間を比較する(LocalDateTime) |
日にちを比較する(LocalDate)
public boolean isAfter(ChronoLocalDate other) |
public boolean isBefore(ChronoLocalDate other) |
public boolean isEqual(ChronoLocalDate other) |
LocalDateクラスで日にちを比較するサンプルです。
import java.time.LocalDate
fun main(args: Array<String>) {
val date1 = LocalDate.of(2020, 8, 3)
val date2 = LocalDate.of(2020, 7, 30)
val d1 = date1.isAfter(date2)
println(d1) // true
val d2 = date1.isBefore(date2)
println(d2) // false
val d3 = date1.isEqual(date2)
println(d3) // false
val date3 = LocalDate.of(2020, 8, 3)
val date4 = LocalDate.of(2020, 8, 3)
val d4 = date3.isEqual(date4)
println(d4) // true
}
5行目は、2020年8月3日を意味します。
6行目は、2020年7月30日を意味します。
8行目は、isAfterメソッドです。A>Bのときにtrueになります。
11行目は、isBeforeメソッドです。A<Bのときにtrueになります。
14行目は、isEqualメソッドです。A=Bのときにtrueになります。
時間を比較する(LocalDateTime)
LocalDateTimeクラスで時間を比較するサンプルです。
import java.time.LocalDateTime
import java.time.LocalTime
fun main(args: Array<String>) {
val date1 = LocalDateTime.of(2020, 8, 3, 15, 20, 10)
val date2 = LocalDateTime.of(2020, 8, 3, 14, 50, 10)
val d1 = date1.isAfter(date2)
println(d1) // true
val d2 = date1.isBefore(date2)
println(d2) // false
val d3 = date1.isEqual(date2)
println(d3) // false
val date3 = LocalTime.of(15, 20, 10)
val date4 = LocalTime.of(14, 50, 10)
val d4 = date3.isAfter(date4)
println(d4) // true
}
5行目は、2020年8月3日15時20分10秒を意味します。
6行目は、2020年7月30日14時50分10秒を意味します。
8行目は、isAfterメソッドです。A>Bのときにtrueになります。
11行目は、isBeforeメソッドです。A<Bのときにtrueになります。
14行目は、isEqualメソッドです。A=Bのときにtrueになります。
17,18行目は、LocalTimeクラスです。時間のみで比較する場合使用できます。
以下は、Java8 API仕様のLocalDateTimeクラスのリンクです。
https://docs.oracle.com/javase/jp/8/docs/api/java/time/LocalDateTime.html
関連の記事