我不写代码,我只是代码的搬运工

package com.example.demo.test.时间;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

/**
 *
 * @author Mr.wang
 * @version 2019年12月17日 上午9:33:40
 * 
 */
public class getAgeByBirthday {

public static int getAgeByBirth(Date birthday) {
        // Calendar:日历
        /* 从Calendar对象中或得一个Date对象 */
        Calendar cal = Calendar.getInstance();
        /* 把出生日期放入Calendar类型的bir对象中,进行Calendar和Date类型进行转换 */
        Calendar bir = Calendar.getInstance();
        bir.setTime(birthday);
        /* 如果生日大于当前日期,则抛出异常:出生日期不能大于当前日期 */
        if (cal.before(birthday)) {
            throw new IllegalArgumentException("The birthday is before Now,It's unbelievable");
        }
        /* 取出当前年月日 */
        int yearNow = cal.get(Calendar.YEAR);
        int monthNow = cal.get(Calendar.MONTH);
        int dayNow = cal.get(Calendar.DAY_OF_MONTH);
        /* 取出出生年月日 */
        int yearBirth = bir.get(Calendar.YEAR);
        int monthBirth = bir.get(Calendar.MONTH);
        int dayBirth = bir.get(Calendar.DAY_OF_MONTH);
        /* 大概年龄是当前年减去出生年 */
        int age = yearNow - yearBirth;
        /* 如果出当前月小与出生月,或者当前月等于出生月但是当前日小于出生日,那么年龄age就减一岁 */
        if (monthNow < monthBirth || (monthNow == monthBirth && dayNow < dayBirth)) {
            age--;
        }
        return age;
    }

/* main方法测试 */
    public static void main(String[] args) {
        SimpleDateFormat sft = new SimpleDateFormat("yyyy-MM-dd");
        String sftBirth = "2018-4-25";
        Date date = null;
        try {
            date = sft.parse(sftBirth);
        } catch (Exception e) {
            e.printStackTrace();
        }
        int age = getAgeByBirthday.getAgeByBirth(date);
        System.out.print("年龄=" + age + "岁");
    }
}

Java工具-根据出生年月日计算出年龄相关推荐

  1. 根据Date类型出生年月日计算出年龄

    要求:给一个Date类型的出生时间,出身年月日使用时间选择器选取,得到此人的年龄,要求年龄限制在1-100岁之间. 1.在jsp页面得到出生时间,格式为yyyy-MM-dd HH:mm:ss,限定最小 ...

  2. php 输入出生年月日计算年纪,PHP实现根据出生年月日计算年龄的功能(代码示例)...

    本篇文章给大家介绍一下使用PHP实现根据出生年月日计算年龄的功能,结合实例形式分析了php日期相关转换与计算操作技巧.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. 废话不多说,之间 ...

  3. Access根据出生日期计算年龄_WPS表格技巧—如何根据出生年月日求虚岁年龄

    我们在利用WPS表格和Excel表格进行日常办公时,经常需要计算年龄,那么如果我们想要根据出生年月日求虚岁年龄的话,还要一个一个数吗?当然不必,今天我们就来教大家如何计算年龄根据出生年月日求虚岁年龄, ...

  4. PHP实现根据出生年月日计算年龄的功能(代码示例)

    本篇文章给大家介绍一下使用php实现根据出生年月日计算年龄的功能,结合实例形式分析了php日期相关转换与计算操作技巧.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. 废话不多说,之间 ...

  5. java计算年龄_java根据出生日期计算出年龄

    java根据出生日期计算出年龄 发布时间:2018-05-18 16:07, 浏览次数:3155 , 标签: java日期年龄计算 String dataOfBirth = "1991-10 ...

  6. 根据出生年月日计算出生了多少年,多少月,多少天

    根据出生年月日计算出生了多少年,多少月,多少天 1,定义一个方法获得出生日期的Date类型时间 /*** // 格式化字符串类型的时间* @param birthday* @return* @thro ...

  7. 根据出生年月日算出天干地支星座属相

    出生年月日转化 输入:某人出生的年月日(如1995,8,1) 输出:输出对应的天干地支属相和星座信息 Tiangan = ["甲","乙","丙&qu ...

  8. 蔡勒公式 java,C/C++根据年月日计算星期几(蔡勒公式篇)

    蔡勒公式  蔡勒(Zeller)公式:是一个计算星期的公式. 随便给一个日期,就能用这个公式推算出是星期几. 蔡勒公式如下: W = [C/4] - 2C + y + [y/4] + [13 * (M ...

  9. 根据出生年月日算出实际的月龄

    工具类 /*** 根据出生日期算出月龄*/public static Integer getMouthAge(Date birth){if(null == birth){return 0;}Calen ...

最新文章

  1. iphone屏幕镜像如何全屏_苹果系统截屏录屏+标记剪辑功能详解( iPhone/iPad/Mac)
  2. DCT C语言 修改了c程序以及matlab的程序
  3. 【教程】VsCode搭建Java开发环境
  4. StrokePlus常用脚本
  5. c# base 和this 继承
  6. eclipse 上svn插件的安装,百度知道
  7. 日志存储 elasticsearch vs clickhouse
  8. oracle查询保留小数点后三位,关于Oracle中查询的数字值的显示格式需要保留小数点后两位(或者三位,及其他位数)...
  9. Android开发Java版 —— 基础知识
  10. 某软件圣天诺加密狗破解过程
  11. 10x5 10x5用计算机记忆,第一章科学计算器使用
  12. powerbi嵌入到HTML5,如何把Power BI嵌入到Web应用中
  13. Insyde uefi 隐藏设置_Hidden bar:Mac菜单栏图标隐藏利器
  14. 基于S3C2440数码相框
  15. 【狂神说Java】SpringBoot最新教程IDEA版通俗易懂
  16. 题目:L2-029 特立独行的幸福 (25 分)
  17. 8:PMS和软件安装的介绍-步入Linux的现代方法
  18. Vue 2.0 开发聊天程序(二)真正的开始
  19. 计算机在职研是不是双证,计算机双证在职研究生好考吗?
  20. 数字游戏ABCD*E=DCBA-第11届蓝桥杯Scratch选拔赛真题精选

热门文章

  1. 2021-03-22 unI-app 前端直播推流实现
  2. 关于监控摄像头小程序直播使用流程及主要应用
  3. Zabbix实现企业微信报警
  4. 首期「OSCHINA 开源软件趋势榜」榜单公布 | 有奖征文等你来
  5. UEFI和传统引导的区别有哪些
  6. 小程序云开发登陆流程
  7. Springboot + vue 实现导出word
  8. JS中常用的函数求和方法总结【五种方法】
  9. stroj uplink
  10. 运行项目页面显示“该网页无法正常运作”的解决办法 - 前端篇