根据生日计算年龄

/*
     * 根据生日计算年龄
     */
    public int age(String birthDate) {
        SimpleDateFormat dft=new SimpleDateFormat("yyyy-MM-dd");
        Date time = null;
        //类型转换
        try {
            time=dft.parse(birthDate);
        } catch (ParseException e1) {
            e1.printStackTrace();
        }
        //获取当前系统时间
        Calendar cal = Calendar.getInstance();
        //如果生日大于当前系统时间,则抛出异常
        if(cal.before(time)){
             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(time);
        //取出出生时的年月日
        int yearBirth = cal.get(Calendar.YEAR);
        int monthBirth = cal.get(Calendar.MONTH);
        int dayOfMonthBirth = cal.get(Calendar.DAY_OF_MONTH);
        //计算age
        int age = 0;
        age=yearNow - yearBirth;
        if(monthNow<=monthBirth){
            if(monthNow==monthBirth){
                if(dayOfMonthNow<dayOfMonthBirth){
                    age--;
                }
            }else{
                age--;
            }
        }
        return age;
    }

时间: 2024-10-10 10:56:01

根据生日计算年龄的相关文章

SPSS根据生日计算年龄并分组

COMPUTE Age=DATEDIFF($TIME,BirthDate,"years"). EXECUTE. SAVE OUTFILE='D:\MaryKay\Data\PRD\ConsultantInfoPrd.sav' /COMPRESSED. SAVE OUTFILE='D:\MaryKay\Data\PRD\ConsultantInfoPrd.sav' /COMPRESSED. STRING AgeGroup1 (A8). RECODE Age (19 thru 24='19

java 根据生日计算年龄

根据生日计算年龄可以通过Calendar实现.最简单可以考虑get(Calendar.DAY_OF_YEAR)来简单修正年龄,但是遇到生日在闰年的2月29之后,或者今年是闰年的2月29之后可能出现计算不准,误差一天.所以还是老实判断年月日好了. // 根据生日计算年龄,判断了年月日,比简单的年份上计算更精准 public static int getAge(Date birthDay) throws Exception {         Calendar cal = Calendar.getI

问题:oracle 计算年龄;结果:oracle中根据生日计算年龄的问题

SELECT FLOOR(MONTHS_BETWEEN(SYSDATE,birthday)/12,1) FROM ltteacherinfo where name='朱雪东111'这个报错ORA 00909 :invalid number of arguments这个是怎么错了,计算年龄该怎么算,年龄要整数 --计算员工年龄SELECT FLOOR(MONTHS_BETWEEN(SYSDATE,birthdate)/12) FROM   ps_personal_data             

C#根据身份证号码,计算生日、年龄、性别

朋友谈及身份证相关的信息,才了解到原来省份证号码中包含了年龄和性别. 这样在数据库中,就不必单独留字段存放它们了(不过,要根据具体情况来,要是读取频率较高,还是单独列出为好),这样顺带解决了年龄变更的问题. 程序仅仅为了实现这个功能,里面还是需要数据验证的,用户输入的信息,毕竟在猿类看来,都是“非法的”.废话不多说了,贴上我写的程序,还请路过的大神斧正: using System; using System.Collections.Generic; using System.Linq; usin

根据生日计算员工年龄

实现效果: 关键知识:(注意:引用 using Microsoft.VisualBasic;) DateAndTime类的DateDiff静态方法获取日期时间的间隔数: DateDiff(DateInterval Internal,DateTime Date1,DateTime date2,FirstDayOfWeek DayOfWeek,FirstWeekOfYear WeekOfYear); 实现代码: private void button1_Click(object sender, Ev

iOS 获取当前时间以及计算年龄(时间差)

获取当前时间 NSDate *now = [NSDate date]; NSLog(@"now date is: %@", now); NSCalendar *calendar = [NSCalendar currentCalendar]; NSUInteger unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarU

Java 计算年龄

1 public static String getAgeTxt(String birthTime,String beginTime,int level){ 2 if(StringUtils.isBlank(birthTime)||StringUtils.isBlank(beginTime)){ 3 System.out.println("参数中有空值!"); 4 } 5 6 int year = 0,month=0,day=0,hour=0; 7 8 Date birthDate =

js/java中计算年龄

js中计算年龄  /**  * 将生日转换成年龄  */  function birthDayToAge(){  var aDate=new Date();  var thisYear = aDate.getFullYear();  var thisMonth = aDate.getMonth()+1;  var thisDay = aDate.getDate();  var currentDate = thisYear+"-"+thisMonth+"-"+this

实例365(3)---------DateDiff 函数,用生日获得年龄

一:截图 二:代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using Microsoft.VisualBasic; namespace GetAge { public p