欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JAVA 根據(jù)身份證計(jì)算年齡的實(shí)現(xiàn)代碼

 更新時間:2018年05月10日 14:19:27   作者:HrlSnow  
這篇文章主要介紹了JAVA 根據(jù)身份證計(jì)算年齡的實(shí)例代碼及java根據(jù)出生日期獲得年齡的方法,代碼簡單易懂,非常不錯,具有一定的參考借鑒價(jià)值,需要的朋友參考下吧

下面一段代碼給大家分享java根據(jù)身份證計(jì)算年齡的方法,具體代碼如下所示:

birthDate = idCard.substring(6,10)+"-"+idCard.substring(10,12)+"-"+idCard.substring(12,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]);
 // 得到當(dāng)前時間的年、月、日
 Calendar cal = Calendar.getInstance();
 int yearNow = cal.get(Calendar.YEAR);
 int monthNow = cal.get(Calendar.MONTH) + 1;
 int dayNow = cal.get(Calendar.DATE);
 // 用當(dāng)前年月日減去生日年月日
 int yearMinus = yearNow - selectYear;
 int monthMinus = monthNow - selectMonth;
 int dayMinus = dayNow - selectDay;
 int age = yearMinus;
 if (yearMinus < 0) {// 選了未來的年份
  age = 0;
 } else if (yearMinus == 0) {// 同年的,要么為1,要么為0
  if (monthMinus < 0) {// 選了未來的月份
   age = 0;
  } else if (monthMinus == 0) {// 同月份的
   if (dayMinus < 0) {// 選了未來的日期
    age = 0;
   } else if (dayMinus >= 0) {
    age = 1;
   }
  } else if (monthMinus > 0) {
   age = 1;
  }
 } else if (yearMinus > 0) {
  if (monthMinus < 0) {// 當(dāng)前月>生日月
  } else if (monthMinus == 0) {// 同月份的,再根據(jù)日期計(jì)算年齡
   if (dayMinus < 0) {
   } else if (dayMinus >= 0) {
    age = age + 1;
   }
  } else if (monthMinus > 0) {
   age = age + 1;
  }
 }
 return age;
}

下面在看下java根據(jù)出生日期獲得年齡

public static int getAge(Date birthDay) throws Exception { 
  Calendar cal = Calendar.getInstance(); 
  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 dayOfMonthNow = cal.get(Calendar.DAY_OF_MONTH); 
  cal.setTime(birthDay); 
  int yearBirth = cal.get(Calendar.YEAR); 
  int monthBirth = cal.get(Calendar.MONTH); 
  int dayOfMonthBirth = cal.get(Calendar.DAY_OF_MONTH); 
  int age = yearNow - yearBirth; 
  if (monthNow <= monthBirth) { 
   if (monthNow == monthBirth) { 
    if (dayOfMonthNow < dayOfMonthBirth) age--; 
   }else{ 
    age--; 
   } 
  } 
  System.out.println("age:"+age); 
  return age; 
 }

總結(jié)

以上所述是小編給大家介紹的JAVA 根據(jù)身份證計(jì)算年齡,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • 關(guān)于Android觸摸事件分發(fā)的原理詳析

    關(guān)于Android觸摸事件分發(fā)的原理詳析

    觸摸事件分發(fā)機(jī)制一直以來都是Android中比較重要的一大塊,自定義view,各種復(fù)雜的自定義手勢交互都與觸摸事件分發(fā)機(jī)制關(guān)系密,下面這篇文章主要給大家介紹了關(guān)于Android觸摸事件分發(fā)原理的相關(guān)資料,需要的朋友可以參考下
    2022-01-01
  • 使用注解開發(fā)SpringMVC詳細(xì)配置教程

    使用注解開發(fā)SpringMVC詳細(xì)配置教程

    這篇文章主要介紹了使用注解開發(fā)SpringMVC詳細(xì)配置教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Java字符串拼接+和StringBuilder的比較與選擇

    Java字符串拼接+和StringBuilder的比較與選擇

    Java 提供了兩種主要的方式:使用 "+" 運(yùn)算符和使用 StringBuilder 類,本文主要介紹了Java字符串拼接+和StringBuilder的比較與選擇,感興趣的可以了解一下
    2023-10-10
  • Java抽象類和接口使用梳理

    Java抽象類和接口使用梳理

    對于面向?qū)ο缶幊虂碚f,抽象是它的一大特征之一,在?Java?中可以通過兩種形式來體現(xiàn)OOP的抽象:接口和抽象類,下面這篇文章主要給大家介紹了關(guān)于Java入門基礎(chǔ)之抽象類與接口的相關(guān)資料,需要的朋友可以參考下
    2022-02-02
  • Java實(shí)現(xiàn)FTP文件的上傳和下載功能的實(shí)例代碼

    Java實(shí)現(xiàn)FTP文件的上傳和下載功能的實(shí)例代碼

    FTP 是File Transfer Protocol(文件傳輸協(xié)議)的英文簡稱,而中文簡稱為“文傳協(xié)議”。接下來通過本文給大家實(shí)例講解Java實(shí)現(xiàn)FTP文件的上傳和下載功能,需要的的朋友一起看看吧
    2016-11-11
  • Java利用蒙特卡洛方法求解圓周率π值

    Java利用蒙特卡洛方法求解圓周率π值

    蒙特·卡羅方法(Monte Carlo method),也稱統(tǒng)計(jì)模擬方法,是一種以概率統(tǒng)計(jì)理論為基礎(chǔ)的數(shù)值計(jì)算方法。本文將利用該方法實(shí)現(xiàn)圓周率的計(jì)算,需要的可以參考一下
    2022-08-08
  • Spring Boot接口設(shè)計(jì)防篡改、防重放攻擊詳解

    Spring Boot接口設(shè)計(jì)防篡改、防重放攻擊詳解

    這篇文章主要給大家介紹了關(guān)于Spring Boot接口設(shè)計(jì)防篡改、防重放攻擊的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Spring Boot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • 詳解Java 對象序列化和反序列化

    詳解Java 對象序列化和反序列化

    本篇文章主要介紹了Java 對象序列化和反序列化,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • 在Spring Boot中如何使用Cookies詳析

    在Spring Boot中如何使用Cookies詳析

    這篇文章主要給大家介紹了關(guān)于在Spring Boot中如何使用Cookies的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者使用Spring Boot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Springboot mybais配置多數(shù)據(jù)源過程解析

    Springboot mybais配置多數(shù)據(jù)源過程解析

    這篇文章主要介紹了Springboot+mybais配置多數(shù)據(jù)源過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03

最新評論