La método compareTo () compara dos fechas y devuelve un número entero basado en la comparación.
Firma del método:
public int compareTo(ChronoLocalDate otherDate)
Devuelve 0 si ambas fechas son iguales.
Devuelve un valor positivo si “esta fecha” es mayor que otherDate.
Devuelve un valor negativo si “esta fecha” es menor que otherDate.
Ejemplo de LocalDate compareTo ()
import java.time.LocalDate; public class Example { public static void main(String[] args) { /* Comparing the Dates given in String format * First the given strings are parsed in the LocalDate * and then compared against each other using compareTo() */ LocalDate date1 = LocalDate.parse("2017-06-22"); System.out.println(date1); LocalDate date2 = LocalDate.parse("2017-06-22"); System.out.println(date2); System.out.println(date2.compareTo(date1)); /* Comparing the Dates with the given year, month and * day information. The given data is passed in the of() method * of LocalDate to create instances of LocalDate and then compared * using the compareTo() method. * */ LocalDate date3 = LocalDate.of(2017, 06, 22); System.out.println(date3); LocalDate date4 = LocalDate.of(2017, 10, 26); System.out.println(date4); System.out.println(date4.compareTo(date3)); /* Given Date is compared with the current Date */ LocalDate date5 = LocalDate.now(); System.out.println(date5); LocalDate date6 = LocalDate.of(2016, 02, 10); System.out.println(date6); System.out.println(date6.compareTo(date5)); } }
Producción:
2017-06-22 2017-06-22 0 2017-06-22 2017-10-26 4 2017-10-28 2016-02-10 -1
Como puede ver, la primera comparación salió como 0 porque ambas fechas son iguales. La segunda comparación fue positiva porque “esta fecha” (fecha 4) es mayor que “otra fecha” (fecha3). La tercera comparación dio un valor negativo porque “esta fecha” (fecha 6) es menor que la “otra fecha” (fecha5).
Artículos Relacionados:
- Java LocalDate – método atStartOfDay ()
- Java LocalDate – Método AdjustInto ()
- Java LocalDate
- Java: de LocalDate a LocalDateTime