码迷,mamicode.com
首页 > 其他好文 > 详细

身份证号判断周岁

时间:2019-09-30 16:57:17      阅读:107      评论:0      收藏:0      [点我收藏+]

标签:nbsp   idc   cal   date   color   minus   person   else   pre   

public Integer checkExpertAge(String idCard) {
    //  1.  获取身份证中的出生年、月、日
    Integer personYear = Integer.parseInt(idCard.substring(6, 10));
    Integer personMonth = Integer.parseInt(idCard.substring(10, 12));
    Integer personDay = Integer.parseInt(idCard.substring(12, 14));
    //  2.  获取当前时间的年、月、日
    Calendar cal = Calendar.getInstance();
    Integer yearNow = cal.get(Calendar.YEAR);
    Integer monthNow = cal.get(Calendar.MONTH) + 1;
    Integer dayNow = cal.get(Calendar.DATE);
    //  3.  用当前年月日减去生日年月日
    Integer yearMinus = yearNow - personYear;
    Integer monthMinus = monthNow - personMonth;
    Integer dayMinus = dayNow - personDay;
    //  4.  周岁判断
    Integer age = yearMinus;
    if (yearMinus == 0) {
        //  出生年份为当前年份
        age = 0;
    } else {
        //  出生年份大于当前年份
        if (monthMinus < 0) {
            //  出生月份小于当前月份时,还没满周岁
            age = age - 1;
        }
        if (monthMinus == 0) {
            //  当前月份为出生月份时,判断日期
            if (dayMinus < 0) {
                //  出生日期小于当前月份时,没满周岁
                age = age - 1;
            }
        }
    }return age;
}

 

身份证号判断周岁

标签:nbsp   idc   cal   date   color   minus   person   else   pre   

原文地址:https://www.cnblogs.com/shiblog/p/11613156.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!