Java 8 tiene una biblioteca completamente nueva para fechas y horas en el paquete java.time, algo que es muy bienvenido para cualquiera que haya tenido que usar JodaTime antes o con problemas para crear sus propios métodos de ayuda para el procesamiento de fechas. Muchas clases en este paquete representan las marcas de tiempo y tienen métodos de ayuda como getHour()
para obtener horas de la marca de tiempo, getMinute()
para obtener minutos de la marca de tiempo, getNano()
para obtener nanos de la marca de tiempo, etc ...
Noté que no tienen un método llamado getMillis()
para obtener los milis de la marca de tiempo. En su lugar, uno tendría que llamar al método get(ChronoField.MILLI_OF_SECOND)
. A mí me parece una inconsistencia en la biblioteca. ¿Alguien sabe por qué falta este método, o como Java 8 aún está en desarrollo, existe la posibilidad de que se agregue más adelante?
Las clases definidas aquí representan los principales conceptos de fecha y hora, incluidos instantes, duraciones, fechas, horas, zonas horarias y períodos. Se basan en el sistema de calendario ISO, que es el calendario mundial de facto que sigue las reglas gregorianas prolepticas. Todas las clases son inmutables y seguras para subprocesos.
Cada instancia de fecha y hora está compuesta por campos que las API facilitan convenientemente. Para acceder a los campos de nivel inferior, consulte el paquete
java.time.temporal
. Cada clase incluye soporte para imprimir y analizar todo tipo de fechas y horas. Consulte el paquetejava.time.format
para las opciones de personalización ...
Ejemplo de este tipo de clase:
enlace
Una fecha y hora sin una zona horaria en el sistema de calendario ISO-8601, como 2007-12-03T10: 15: 30.
LocalDateTime
es un objeto de fecha y hora inmutable que representa una fecha y hora, a menudo visto como año-mes-día-hora-minuto-segundo. También se puede acceder a otros campos de fecha y hora, como día del año, día de la semana y semana del año. El tiempo está representado en nanosegundos de precisión. Por ejemplo, el valor "2 de octubre de 2007 a las 13: 45.30.123456789" se puede almacenar en unLocalDateTime
...