根据出生日期,计算年龄

        Calendar cal = Calendar.getInstance();
        //第一步,判断是否大于当前日期,无法计算
        if (cal.before(birthday)) {//传入出生日期
            return ;
        }
        //判断为可以计算
       // 第二部,获取当前日期
        int yearNow = cal.get(Calendar.YEAR);//获取当前年份
        int monthNow = cal.get(Calendar.MONTH);//获取当前月份
        int dayNow = cal.get(Calendar.DAY_OF_MONTH);//获取当前天

        //第三步,获取出生日期
        cal.setTime(birthday);//取出
        int yearbirth = cal.get(Calendar.YEAR);//获取当前年份
        int monthbirth = cal.get(Calendar.MONTH);//获取当前月份
        int daybirth = cal.get(Calendar.DAY_OF_MONTH);//获取当前天
        int age = yearNow - yearbirth;

       // 第四步,判断是否过生日
        if (monthNow <= monthbirth) {
            if (monthNow == monthbirth) {
                if (dayNow < daybirth) {
                    age--;
                }
            } else {
                age--;
            }
        }
       //输出年龄
       System.out.println(age);

你可能感兴趣的:(根据出生日期,计算年龄)