0
点赞
收藏
分享

微信扫一扫

util-caleAge 计算年龄

想溜了的蜗牛 2022-01-20 阅读 25
java

util 以备不时之需

   public static int caleAge(String birthDateStr) throws ParseException {
        return caleAge(birthDateStr, null);
    }

    public static int caleAge(String birthDateStr, String deathDateStr) throws ParseException {
        Date end = new Date();
        DateFormat df = new SimpleDateFormat("yyyyMMdd");
        if (StringUtils.hasText(deathDateStr)) {
            end = df.parse(deathDateStr);
        }
        Calendar cal = Calendar.getInstance();
        cal.setTime(end);
        int endYear = cal.get(Calendar.YEAR);
        int endMonth = cal.get(Calendar.MONTH);
        int endDay = cal.get(Calendar.DAY_OF_MONTH);

        Date start = df.parse(birthDateStr);
        cal.setTime(start);
        int startYear = cal.get(Calendar.YEAR);
        int startMonth = cal.get(Calendar.MONTH);
        int startDay = cal.get(Calendar.DAY_OF_MONTH);
        int age = endYear - startYear;
        if (endMonth < startMonth) {
            age--;
        }
        if (endMonth == startMonth && endDay < startDay) {
            age--;
        }
        return age;
    }
举报

相关推荐

0 条评论