很简单吗
IF ELSE 就是得到满年龄
现在的年和生日的年相等 就是零
不等就相减再减一

解决方案 »

  1.   

    程序中是不是有点错误呀比较的时候应该是用生日和今天来比较
    上面用的怎么是生日和今天的年份来比较呀
    int birthYear = calendar.get(Calendar.YEAR);
    是不是要改成
    int birthDay = calendar.get(Calendar.Day);
    然后再比较这样才算是正确的年和天没有可比性的!
      

  2.   

    yearToday和birthYear指的可都是年,当然可以比较。
    这个方法只是进行大致的比较罢了,所以没涉及到具体的日期。
      

  3.   

    这只是个粗粗略的计算
    要计算详细一些可以这样(以满生日才计算,不满生日不计算)
    Calendar today = Calendar.getInstance();
    Calendar birth = new GregorianCalendar();
    birth.setTime(birthdate);
    int age = 0;
    while (birth.before(today))
    {
        age++;
        birth.add(Calendar.YEAR, 1);
    }