根据出生日期计算年龄
public class DateGetAge
{
public static int getAge(Date birthDay) throws Exception
{
Calendar cal = Calendar.getInstance();
if (cal.before(birthDay))
{
throw new IllegalArgumentException(
"The birthDay is before Now.It's unbelievable!");
}
int yearNow = cal.get(Calendar.YEAR);
int monthNow = cal.get(Calendar.MONTH);
int dayOfMonthNow = cal.get(Calendar.DAY_OF_MONTH);
cal.setTime(birthDay);
int yearBirth = cal.get(Calendar.YEAR);
int monthBirth = cal.get(Calendar.MONTH);
int dayOfMonthBirth = cal.get(Calendar.DAY_OF_MONTH);
int age = yearNow - yearBirth;
if (monthNow <= monthBirth)
{
if (monthNow == monthBirth)
{
if (dayOfMonthNow < dayOfMonthBirth)
age--;
}
else
{
age--;
}
}
return age;
}
}
本文介绍了一个使用Java编写的计算年龄的方法。通过比较当前日期与出生日期,此方法能够准确地计算出年龄,并处理了一些特殊情况,例如当生日还未到来的情况。
3062

被折叠的 条评论
为什么被折叠?



