@根据出生日期计算年龄(精确到天)

代码块

public class CountAgeUtil {

public static String countAge(String from){

String age = "";

int year = 0;

int month = 0;

int day = 0;

from = from.substring(0, 10).replace("-", "");

int birthYear = Integer.parseInt(from.substring(0, 4));

int birthMonth = Integer.parseInt(from.substring(4, 6))-1;

int birthDay = Integer.parseInt(from.substring(6, 8));

Calendar birthday = new GregorianCalendar(birthYear, birthMonth, birthDay);

if(from == null){

age = age + 0;

} else {

Calendar c1 = new GregorianCalendar(birthYear, birthMonth, birthDay);

Calendar c2 = Calendar.getInstance();

c2.setTime(new Date());

if (c1.after(c2)) {

throw new IllegalArgumentException("生日不能超过当前日期");

}

int from_year = c1.get(Calendar.YEAR);

int from_month = c1.get(Calendar.MONTH)+1;

int from_day = c1.get(Calendar.DAY_OF_MONTH);

int MaxDayOfMonth = c1.getActualMaximum(Calendar.DAY_OF_MONTH);

int to_year = c2.get(Calendar.YEAR);

int to_month = c2.get(Calendar.MONTH)+1;

int to_day = c2.get(Calendar.DAY_OF_MONTH);

year = to_year - from_year;

if(to_month - from_month>0){

month = to_month -from_month;

if(to_day - from_day < 0){

month = month - 1;

day = to_day -from_day + MaxDayOfMonth;

} else {

day= to_day -from_day;

}

}else if(to_month - from_month==0){

if(to_day - from_day < 0){

--year;

month = 11;

day = to_day -from_day + MaxDayOfMonth;

} else {

day= to_day -from_day;

}

}else if(to_month-from_month<0){

--year;

month = to_month -from_month+12;

if(to_day - from_day < 0){

month = month - 1;

day = to_day -from_day + MaxDayOfMonth;

} else {

day= to_day -from_day;

}

}

age=age + year + "岁"+month + "个月" + day + "天";

}

return age;

}

}

本文地址:https://blog.csdn.net/weixin_43865707/article/details/111991845

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

java根据生日精确计算年龄_java根据出生日期计算年龄(精确到天)相关推荐

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

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

  2. java 生日 年龄_Java 根据出生日期获得年龄

    展开全部 实现步骤: 1.获取当前时间 2.判断出生e5a48de588b662616964757a686964616f31333366303131日期是否小于当前时间,如果大于,则引发一场 3.从当 ...

  3. java 计算星座_Java根据出生日期计算星座

    下面我们来了解一下十二星座对应的日期划分范围.白羊:0321~0420          天秤:0924~1023 金牛:0421~0521          天蝎:1024~1122 双子:0522 ...

  4. java语言计算圆周率_Java语言简单计算圆周率完整示例

    本文实例讲述了Java语言简单计算圆周率完整示例.分享给大家供大家参考,具体如下,希望对大家学习Java语言简单计算圆周率有所帮助. 这两天在网上看到一个题,已知Pi可以用函数4 * (1 – 1/3 ...

  5. python根据生日求年龄_python根据出生日期计算年龄的代码

    python根据出生日期计算年龄的代码,运行后会提醒用户输出出生的年月日,然后输出年龄,可以改写为一个通用函数 from time import * #a function to find your ...

  6. java判断星座if语句_Java根据出生日期计算(判断)星座

    Java根据出生日期计算(判断)星座 下面我们来了解一下十二星座对应的日期划分范围. 白羊:0321~0420 天秤:0924~1023 金牛:0421~0521 天蝎:1024~1122 双子:05 ...

  7. python输入出生年份、输出年龄_python根据出生日期计算年龄的代码

    python根据出生日期计算年龄的代码,运行后会提醒用户输出出生的年月日,然后输出年龄,可以改写为一个通用函数 from time import * #a function to find your ...

  8. python输入出生日期和当前日期计算年龄_python根据出生日期计算年龄的代码

    python根据出生日期计算年龄的代码,运行后会提醒用户输出出生的年月日,然后输出年龄,可以改写为一个通用函数 from time import * #a function to find your ...

  9. 如何用python计算年龄_python根据出生日期返回年龄的方法

    本文实例讲述了python根据出生日期返回年龄的方法.分享给大家供大家参考.具体实现方法如下: def CalculateAge(self, Date): '''Calculates the age ...

最新文章

  1. webstorm怎么跑项目_怎么跑Mint-UI的实例,你知道吗?
  2. oracle的parameters怎么用,oracle普通用户使用show parameter方法
  3. java题-java运行时异常与一般异常有何异同?
  4. 大数据城市规划 杨东_AI为智慧城市规划做建设
  5. phpstudy命令行中数据表插入中文显示不了的问题
  6. NWT内斗:为了还不值钱的股份
  7. MATLAB深度学习 2019
  8. PHP 生成 ppt,PHP导出PPT方法,PowerPoint/PhpPresentation处理
  9. whatsapp多开,电脑版whatsapp多开
  10. 关于计算机的教学论文,关于计算机教学论文
  11. 二代证|港澳台居民居住证|电子护照阅读器 读卡器MEPR200+的应用与二次开发攻略
  12. 编程之美 - 让CPU占用率曲线听你指挥
  13. mesh、length、查看源代码函数、scatter、sysm、slove
  14. 我的2020|有风有雨亦有晴
  15. Jackson JsonGenerator类
  16. java初始化加载类_Java 类的加载和初始化
  17. 中考总分150学计算机专业,中考总分是多少 各科都是多少分
  18. 计算机毕业设计SSM房地产销售系统【附源码数据库】
  19. 计算机基础学习日志(二)sq函数
  20. 计算机三级缺考停一年,2020四级缺考会不会被禁考一年

热门文章

  1. 漏洞复现-远程代码执行-CVE-2017-10271-Weblogic
  2. 广告优化师的修行境界之路?
  3. sharepoint 2013 文档库 资源管理器打开报错 在文件资源管理器中打开此位置时遇到问题,将此网站添加到受信任站点列表,然后重试。
  4. Oracle数据库学习-Day3
  5. 南京邮电大学嵌入式系统开发实验3:嵌入式数据库sqlite移植及使用
  6. 如何制定数据割接方案
  7. 【网络安全篇】PHP文件与目录操作(一文带你手撕迷茫)
  8. 详解Arduino Uno开发板的引脚分配图及定义
  9. 临床预测模型网页计算器汇总-肿瘤篇
  10. 汇编语言ROL和RCL之区别