我想以 Java 方法中的 int 形式返回一个年龄。我现在拥有的是以下 getBirthDate() 返回一个 Date 对象(带有出生日期;-)):
public int getAge() {
long ageInMillis = new Date().getTime() - getBirthDate().getTime();
Date age = new Date(ageInMillis);
return age.getYear();
}
但由于 getYear() 已被弃用,我想知道是否有更好的方法来做到这一点?我什至不确定这是否正常工作,因为我还没有单元测试。
原文由 nojevive 发布,翻译遵循 CC BY-SA 4.0 许可协议
JDK 8 使这变得简单而优雅:
一个 JUnit 测试来演示它的使用:
现在每个人都应该使用 JDK 8。所有早期版本都已结束其支持生命周期。