getAge method

int getAge(
  1. int y,
  2. int m,
  3. int d
)

根据年月日获取年龄

Implementation

int getAge(int y, int m, int d) {
  int age = 0;
  DateTime dateTime = DateTime.now();

  int yearNow = dateTime.year;
  int monthNow = dateTime.month;
  int dayOfMonthNow = dateTime.day;

  int yearBirth = y;
  int monthBirth = m;
  int dayOfMonthBirth = d;
  age = yearNow - yearBirth; //计算整岁数
  if (monthNow <= monthBirth) {
    if (monthNow == monthBirth) {
      if (dayOfMonthNow < dayOfMonthBirth) age--;
    } else {
      age--; //当前月份在生日之前,年龄减一
    }
  }
  return age;
}