java date 年龄_Java 根据年月日精确计算年龄
Java 根据年月日精确计算年龄
2018-09-13
[java] view plain copy
package com.jglz.qing.age;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
/**
* Created by qing on 2017/3/28.
*/
public class AgeUtils {
// 根据年月日计算年龄,birthTimeString:"1994-11-14"
public static int getAgeFromBirthTime(String birthTimeString) {
// 先截取到字符串中的年、月、日
String strs[] = birthTimeString.trim().split("-");
int selectYear = Integer.parseInt(strs[0]);
int selectMonth = Integer.parseInt(strs[1]);
int selectDay = Integer.parseInt(strs[2]);
// 得到当前时间的年、月、日
Calendar cal = Calendar.getInstance();
int yearNow = cal.get(Calendar.YEAR);
int monthNow = cal.get(Calendar.MONTH) + 1;
int dayNow = cal.get(Calendar.DATE);
// 用当前年月日减去生日年月日
int yearMinus = yearNow - selectYear;
int monthMinus = monthNow - selectMonth;
int dayMinus = dayNow - selectDay;
int age = yearMinus;// 先大致赋值
if (yearMinus
age = 0;
} else if (yearMinus == 0) {// 同年的,要么为1,要么为0
if (monthMinus
age = 0;
} else if (monthMinus == 0) {// 同月份的
if (dayMinus
age = 0;
} else if (dayMinus >= 0) {
age = 1;
}
} else if (monthMinus > 0) {
age = 1;
}
} else if (yearMinus > 0) {
if (monthMinus 生日月
} else if (monthMinus == 0) {// 同月份的,再根据日期计算年龄
if (dayMinus
} else if (dayMinus >= 0) {
age = age + 1;
}
} else if (monthMinus > 0) {
age = age + 1;
}
}
return age;
}
// 根据时间戳计算年龄
public static int getAgeFromBirthTime(long birthTimeLong) {
Date date = new Date(birthTimeLong * 1000l);
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String birthTimeString = format.format(date);
return getAgeFromBirthTime(birthTimeString);
}
}
[java] view plain copy
package com.jglz.qing.age;
public class AgeTest {
public static void main(String[] args) {
String dataOfBirth = "2016-3-28";
int age = AgeUtils.getAgeFromBirthTime(dataOfBirth);
System.out.println("age:" + age);
}
}
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。
http://www.pinlue.com/style/images/nopic.gif
java date 年龄_Java 根据年月日精确计算年龄相关推荐
- java计算年龄_java根据出生年月日精确计算年龄的算法
今天项目中有个根据出生年月日,需要精确计算年龄的算法,找了半天才算有个正确的,分享出来给牛牛们成为自己java代码库的一部分算法.public static int getAge(Date dateO ...
- Oracle中使用SQL根据出生日期精确计算年龄
Oracle中使用SQL根据出生日期精确计算年龄 提示:以下是本篇文章正文内容,下面案例可供参考 代码如下(示例): select XM,CSNY as 出生日期,-- extract函数用于提取日期 ...
- 根据出生日期计算年龄或者根据身份证号计算年龄
可以把这个方法写成一个工具类方便以后在项目中调用,以下是写好的方法可以直接拿去用 注:(此方法计算的是虚岁年龄不是实岁年龄) //根据身份证号计算年龄 //身份证号 //String certNo = ...
- java根据生日精确计算年龄_java根据出生日期计算年龄(精确到天)
@根据出生日期计算年龄(精确到天) 代码块 public class CountAgeUtil { public static String countAge(String from){ String ...
- java这一年第几天_java 输入年月日,计算该日是这一年的第几天
1.输入年月日,计算该日是这一年的第几天importjava.util.Scanner;publicclassshiyan2{publicstaticvoidmain(String[]args){in ...
- java 小数精确_Java中小数精确计算
小数精确计算 System.out.println(2.00 -1.10);//0.8999999999999999 上面的计算出的结果不是 0.9,而是一连串的小数.问题在于1.1这个数字不能被精确 ...
- Excel如何提取身份证中出生年月日、计算年龄、性别
身份证号是18位,前6位是所属省市区.7至14位是出生年月日.其中第17位表示性别,奇数为男性,偶数女性 身份证号 340204198107181456 340204199504172986 3426 ...
- Java中使用BigDecimal进行浮点数精确计算 超大整数 浮点数等计算,没有数位限制...
(注:前面写了一个超大整数相加的类,参见: 超大整数相加,超过了long的范围,你要怎么做!,后来有朋友评论说BigDecimal可以完全实现我的这这个功能,刚开始的时候,我还不服气,据我所知那里有这 ...
- localdate计算相差天数_还在苦恼MySQL如何根据日期精确计算年龄?看这一篇,就够了
转译自 How To Calculate Age From Date Of Birth In MySQL- Querychat. 中文转载,请注明出处. 使用SQL语句计算年龄,在事务处理和日期计算中 ...
- Java中使用BigDecimal进行浮点数精确计算 超大整数 浮点数等计算 没有数位限制
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! (注:前 ...
最新文章
- 《虚拟化工程师》-真实环境-培训计划 v0.0.1( 赠送:第 01\02 章 (免费视频))...
- ThreadGroup其实比ExecutorService更好
- 架构师速成7.2-为什么要学习协议、规范
- 在TABLE CONTROL 输入完一行记录,按回车的时候光标自动移动到下一行
- esd管 低cj要求_TVS管与ESD保护二极管的区别,联系以及应用
- 每个人都知道MVC…
- 一个使用Logging Application Block的小问题[xgluxv]
- CSS3图片跳动效果
- 用doss进入mysql_一键连接给你省了多少事_DOSS 听吧_音频评测-中关村在线
- matlab 展开多项式,matlab中freqz的用法以及多项式的展开
- excel计算机快捷键大全,Excel使用教程 Excel表格快捷键与功能键大全
- ERP的主要功能模块简介
- java房屋出租预约看房系统springboot ssm带房东租客
- 什么是 NLP (自然语言处理)
- vue实现中英文网站配置
- mac 开启android 模拟器,Mac下安卓模拟器环境配置
- 最小二乘法直线拟合、圆拟合
- selenium源码通读·5 |webdriver/common/action_chains.py-ActionChains类
- 如何在Arch Linux搭建高效便捷的平铺式桌面
- VBA批量OCR识别提取身份证照片信息_手机扫描仪:直装就是VIP,不限次数,一秒钟就能提取图片中的文字...