如何根据一个人的生日计算他的当前年龄,注:birthdate的格式是(yyyymmdd)
实现代码如下:
Date birthdate = currentUser.getResident().getBirthday();
Calendar cal = Calendar.getInstance();int nowYear = cal.get(Calendar.YEAR);
int nowMonth = cal.get(Calendar.MONTH)+1;
int nowDay = cal.get(Calendar.DAY_OF_MONTH);
// 获得用户生日,年,月,日
cal.setTime(birthdate);
int birthYear = cal.get(Calendar.YEAR);
int birthMonth = cal.get(Calendar.MONTH)+1;
int birthDay = cal.get(Calendar.DAY_OF_MONTH);
age = nowYear-birthYear;
if(nowMonth<=birthMonth){
if(nowMonth==birthMonth){
if(nowDay<birthDay){
age--;
}
}
else{
age--;
}
}
逻辑比较简单,就不做解释了,当遇到类似问题的时候可以当做一个解决方案。