java.time
En Java 8 no hay necesidad de usar Joda-Time ya que viene con una nueva API similar en el paquete java.time
. Use la clase LocalDate
.
LocalDate date = LocalDate.of(2014, 3, 18);
LocalDate today = LocalDate.now();
Boolean isToday = date.isEqual(today);
Puede solicitar el lapso de tiempo entre las fechas con Period
clase.
Period difference = Period.between(date, today);
LocalDate
es comparable usando equals
y compareTo
, ya que posee ninguna información sobre hora y la zona horaria.
Sobre java.time
El marco java.time está incorporado en Java 8 y versiones posteriores. Estas clases suplantan a las viejas y problemáticas clases de fecha y hora de legacy, como java.util.Date
, Calendar
, & SimpleDateFormat
.
El proyecto Joda-Time, ahora en maintenance mode, recomienda la migración a las clases java.time.
Para obtener más información, consulte el Oracle Tutorial. Y busque Stack Overflow para obtener muchos ejemplos y explicaciones. La especificación es JSR 310.
¿Dónde obtener las clases java.time?
- Java SE 8, Java SE 9, y más tarde
- incorporado.
- Parte de la API estándar de Java con una implementación integrada.
- Java 9 agrega algunas características menores y correcciones.
- Java SE 6 y Java SE 7
- Gran parte de la funcionalidad de back-java.time está portado a Java 6 & 7 en ThreeTen-Backport.
- Android
- Las versiones posteriores de las implementaciones de haces de Android de las clases java.time.
- Para Android anterior, el proyecto ThreeTenABP se adapta a ThreeTen-Backport (mencionado anteriormente). Ver How to use ThreeTenABP….
El proyecto se extiende ThreeTen-Extra java.time con clases adicionales. Este proyecto es un terreno de prueba para posibles adiciones futuras a java.time. Puede encontrar algunas clases útiles aquí, como Interval
, YearWeek
, YearQuarter
y more.
Es posible que necesite ajustar la zona horaria también. –
Las zonas horarias son una razón más para usar Joda Time =) –
Gracias Eric. Está funcionando bien. Tengo una pregunta sobre esto. En lugar de escribir el método para eliminar el tiempo, ¿podemos usar el Dateformat? aclare –