通过出生日期获取年龄
public static int getAge(Date birthDay) {
if (birthDay == null) {
return 0;
}
Calendar cal = Calendar.getInstance();
if (cal.before(birthDay)) {
return 0;
}
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;
boolean lowAge = monthBirth == monthNow && dayOfMonthBirth < dayOfMonthNow;
if (monthNow > monthBirth || lowAge) {
age--;
}
return age;
}