java 计算年龄 Java 根据出生日期计算年龄

时间:2025-03-10 07:23:13

1.把出生日期字符串转换为日期格式。

public static Date parse(String strDate) throws ParseException {

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

return (strDate);

}

 2.计算年龄

public static int getAge(Date birthDay) throws Exception {

Calendar cal = ();

if ((birthDay)) { //出生日期晚于当前时间,无法计算

throw new IllegalArgumentException(

"The birthDay is before 's unbelievable!");

}

int yearNow = (); //当前年份

int monthNow = (); //当前月份

int dayOfMonthNow = (Calendar.DAY_OF_MONTH); //当前日期

(birthDay);

int yearBirth = ();

int monthBirth = ();

int dayOfMonthBirth = (Calendar.DAY_OF_MONTH);

int age = yearNow - yearBirth; //计算整岁数

if (monthNow <= monthBirth) {

if (monthNow == monthBirth) {

if (dayOfMonthNow < dayOfMonthBirth) age--;//当前日期在生日之前,年龄减一

}else{

age--;//当前月份在生日之前,年龄减一

} } return age; }

 3.执行方法

public static void main(String[] args) {

try {

int age = getAge(parse("1990-09-27")); //由出生日期获得年龄***

("age:"+age);

} catch (Exception e) {

();

}

}