我有两个String
变量,分别包含值"201703"
和"201506"
,即值的格式为"yyyyMM"
,但类型为String
的变量。我想使用Scala和JDK 8找出这两个日期之间的差异。
示例输入:
val x = "201506"
val y = "201703"
期望的输出:
21
答案 0 :(得分:4)
使用Java Time可以轻松完成。
import java.time.YearMonth
import java.time.format.DateTimeFormatter
import java.time.temporal.ChronoUnit._
val date1 = "201506"
val date2 = "201703"
val formatter = DateTimeFormatter.ofPattern("yyyyMM")
val ym1 = YearMonth.parse(date1, formatter)
val ym2 = YearMonth.parse(date2, formatter)
val months = ym1.until(ym2, MONTHS)