First example: birthdate :10-01-1991(ddmmyyyy)
CurrentDate :10-01-2017
Run Code Online (Sandbox Code Playgroud)
如果上面是条件,那么我想打印26作为当前年龄.第二个例子:生日:25-07-1991(ddmmyyyy)
CurrentDate:10-01-2017 如果上面是条件那么我想打印25作为当前年龄.
请帮我 ....!!!!!!
以下是我尝试过的代码.
private int calculateage(Integer day1, Integer month1, Integer year1)
{
Calendar birthCal = new GregorianCalendar(1991, 01, 10);
Calendar nowCal = new GregorianCalendar();
age = nowCal.get(Calendar.YEAR) - birthCal.get(Calendar.YEAR);
boolean isMonthGreater = birthCal.get(Calendar.MONTH) >= nowCal
.get(Calendar.MONTH);
boolean isMonthSameButDayGreater = birthCal.get(Calendar.MONTH) >= nowCal.get(Calendar.MONTH)
&& birthCal.get(Calendar.DAY_OF_MONTH) >= nowCal
.get(Calendar.DAY_OF_MONTH);
if (age < 18) {
Age = age;
}
else if (isMonthGreater || isMonthSameButDayGreater) {
Age = age - 1;
}
return Age;
Run Code Online (Sandbox Code Playgroud)
}