从今天开始计算Groovy的年龄

Dan*_*ega 3 groovy

试图找出某人基于他们的日期有多大.以下代码为我们提供了天数

def now = new Date()
def dob = new Date('08/21/1982')

println now - dob
Run Code Online (Sandbox Code Playgroud)

我们可以除以365,但这并不完全准确.必须有一个简单的方法来做到这一点,但我似乎无法找到它.有任何想法吗?

tim*_*tes 6

或者使用Java 8和Groovy 2.3 RC(如果你想要处于最前沿);-)

import java.time.*

LocalDate today    = LocalDate.now()
LocalDate birthday = LocalDate.of( 1982, Month.AUGUST, 8 )

Period period = Period.between( birthday, today )

println """$period.years years, 
          |$period.months months, 
          |$period.days days""".stripMargin()
Run Code Online (Sandbox Code Playgroud)