import java.util.Calendar;
import java.util.GregorianCalendar;
public class calcularEdad {
public static void main(String[] args) {
// TODO Auto-generated method stub
// Mostramos el resultado de llamar a la función calcular pasando
// como parametro la fecha de nacimiento YYYY-MM-DD
System.out.println(calcular(new GregorianCalendar(1970,02,14)));
}
public static int calcular(Calendar fechaNac) {
Calendar fechaActual = Calendar.getInstance();
// Cálculo de las diferencias.
int years = fechaActual.get(Calendar.YEAR) - fechaNac.get(Calendar.YEAR);
int months = fechaActual.get(Calendar.MONTH) - fechaNac.get(Calendar.MONTH);
int days = fechaActual.get(Calendar.DAY_OF_MONTH) - fechaNac.get(Calendar.DAY_OF_MONTH);
// Hay que comprobar si el día de su cumpleaños es posterior
// a la fecha actual, para restar 1 a la diferencia de años,
// pues aún no ha sido su cumpleaños.
if(months < 0 // Aún no es el mes de su cumpleaños
|| (months==0 && days < 0)) { // o es el mes pero no ha llegado el día.
years--;
}
return years;
}
}
0 Comentarios