Diferencia entre dos fechas (Java 8)

 

¿Recuerdas un evento importante pero no recuerdas qué edad tenías? ¿Quieres saber cuánto tiempo ha transcurrido entre dos fechas? ¿No quieres lidiar con java.util.Calendar?

En ese caso, tal vez quieras usar Date and Time API (Java 8). Ejemplo:

import static java.time.temporal.ChronoUnit.*;

import java.time.chrono.ChronoLocalDate;
import java.time.chrono.ChronoPeriod;
import java.time.format.DateTimeFormatter;

public class Main {
    public static void main(String[] args) {
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
        ChronoLocalDate from = ChronoLocalDate.from(formatter.parse("01/01/2000"));
        ChronoLocalDate to = ChronoLocalDate.from(formatter.parse("01/01/2015"));
        ChronoPeriod period = ChronoPeriod.between(from, to);
        System.out.printf("%d años, %d meses y %d días", period.get(YEARS), period.get(MONTHS), period.get(DAYS));
    }
}

Ver demo en línea.

¡Por si sirve de algo!

~~~

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de Sr. Negativo

Buen tip

Buen tip @jpaul gracias. También puedes usar http://www.tryjava8.com/ para probar código.