¿Cuál es el valor mínimo de fecha en Java?Fecha mínima en Java
Respuesta
Si usted está hablando de java.util.Date
como una marca de tiempo se puede hacer esto
Date d = new Date(0L)
y verá que esto representa Jue Ene 01 01:00:00 GMT 1970
Como se ha señalado tulskiy es posible pasar un valor negativo al constructor de Fecha. Si hacemos esto y utilizar un formato de fecha que incluye la época podemos ver:
Date d = new Date(Long.MIN_VALUE);
DateFormat df = new SimpleDateFormat("EEE, d MMM yyyy G HH:mm:ss Z");
System.out.println(df.format(d));
muestra: Dom 2 Dic 0000 16:47:04 292 269 055 aC
No se olvide que el constructor Fecha felizmente acepta valores negativos.
Date date = new Date(Long.MIN_VALUE);
vuelve
Sun Dec 02 22:47:04 BDT 292269055
supongo que es la época de Big Bang dinosaurios :)
EDITAR
Como martin clayton respondió, puede usar la clase Calendario para consultar la era. Esto dará como resultado 0 que significa BCE:
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date(Long.MIN_VALUE));
System.out.println(calendar.get(Calendar.ERA));
Pero esta parece ser una fecha en el futuro (año 292269055), no en el pasado. Parece que el parámetro se interpreta como un valor positivo. – Grodriguez
@Grodriguez - ¿Cuál es la época de ese año? ;-) –
@Grodriguez: ver mi edición, es un valor en el pasado. –
Es lo mismo que para las clases de calendario.
Prueba esto:
Date d = new Date(Long.MIN_VALUE);
System.out.println(d);
Verás:
Sun Dec 02 16:47:04 GMT 292269055
Pero el formato de fecha por defecto no incluye la época - que es BCE para esta fecha.
Las otras respuestas pueden ser correctas pero usan clases obsoletas.
java.time
Las viejas clases de fecha y hora (java.util.Date/.Calendar etc.) han sido suplantada por el marco java.time incorporado en Java 8 y versiones posteriores.
El java.time clases se inspiran en Joda-Time, definido por JSR 310, extendida por el proyecto ThreeTen-Extra, de back-portado a Java 6 7 & por el proyecto ThreeTen-Backport, y adaptado a Android en el proyecto ThreeTenABP. Ver Tutorial.
Por un momento en la línea de tiempo en UTC con una resolución de nanoseconds, utilice Instant
. Dado un offset-from-UTC, use OffsetDateTime
.Para un time zone (desplazamiento + reglas para anomalías), use ZonedDateTime
, pero por su naturaleza no tiene un mínimo definido, ni tampoco ZoneId
. Para un valor de fecha solamente sin hora del día y sin zona horaria, use LocalDate
. Para un valor de hora del día sin fecha y sin zona horaria, use LocalTime
. Para la fecha y la hora sin zona horaria, use LocalDateTime
.
Instant.MIN
=-1000000000-01-01T00:00Z
OffsetDateTime.MIN
=-999999999-01-01T00:00:00+18:00
LocalDate.MIN
=-999999999-01-01
- =
00:00
LocalDateTime.MIN
=-999999999-01-01T00:00:00
Year.MIN_VALUE
=-999,999,999
ZoneOffset.MIN
=-18:00
(pero en la práctica-12:00
)
Precaución: Tenga cuidado con el uso de estos valores como una especie de bandera o un significado especial. Muchas otras bibliotecas de software y bases de datos pueden no admitir estos valores extremos.
Para una bandera o un significado especial como "no hay valor disponible" no nulo, sugiero elegir un momento arbitrario pero evite llegar a tales extremos, ya sea hacia atrás o hacia adelante en el tiempo. Quizás el Unix epoch reference date, el primer momento de 1970 en UTC, 1970-01-01T00: 00: 00Z. Define como una constante en Java: Instant.EPOCH
Desde Date
se marca como en desuso, pensé que debería haber otra manera de evitar esto, por lo que se veía en algunos de los métodos, y me encontré con esta forma
También puede utilizar Long.MIN_VALUE, en el momento en que escribí esto, no lo había buscado, e incluso/así que no lo recordaba.
** Incorrecto: ** La clase 'java.util.Date' está * no * obsoleta (pero debería ser). Varios de sus métodos están en desuso, pero no toda la clase.Además, esta respuesta no proporciona mucho valor a mi mente. –
simplemente comprobé nuevamente, y usted tenía razón. algunos de sus métodos constructor y adn son, pero no completamente – deadManN
- 1. Fecha mínima y máxima
- 2. Fecha mínima y máxima en UIDatePicker
- 3. ¿Realmente quisiera devolver la fecha mínima?
- 4. ¿Configurando la fecha mínima y máxima en el Calendario?
- 5. iPhone, ¿cómo configuro la fecha mínima de mis selectores de fecha para hoy en el código?
- 6. Secuencia mínima posible del selector Java NIO
- 7. iOS 5 - Configurar la fecha mínima de UIDatePicker para "hoy"
- 8. Restricción mínima de Grails para la validación de fecha
- 9. Fecha de serialización en Java
- 10. Fecha y hora en java
- 11. Fecha JSON a la fecha de Java?
- 12. Buscar la vía de acceso de clase Java mínima necesaria
- 13. ¿Java tiene una cola de prioridad mínima indexada?
- 14. Cómo convertir JavaScript Fecha a Fecha en Java?
- 15. Java redondeo de fecha
- 16. Formato de fecha JAVA
- 17. ¿Encontrar la fecha mínima y máxima en la matriz usando LINQ?
- 18. Datos principales: tratando de encontrar la fecha mínima para un atributo en una entidad
- 19. Implementación de CommonJS mínima
- 20. Función mínima de Mysql
- 21. Longitud mínima Expresión regular
- 22. Función hash perfecta mínima
- 23. MongoDB Consulta por fecha en Java
- 24. Agregar días a una fecha en Java
- 25. Fecha de vencimiento hoy en Java
- 26. Convertir cadena a fecha en java
- 27. Conversión de fecha a entero en Java
- 28. Análisis de fecha RFC 2822 en JAVA
- 29. Problema con formato de fecha en Java
- 30. Fecha de Java a milisegundos
¿Qué significa la fecha mínima? – qrtt1
posible duplicado de [Java: ¿Cuáles/dónde son los valores máximo y mínimo de un Calendario Gregorian?] (Http://stackoverflow.com/questions/2393016/java-what-where-are-the-maximum-and-minimum- values-of-a-gregoriancalendar) –
Ver este hilo http://stackoverflow.com/questions/2393016/java-what-where-are-the-maximum-and-minimum-values-of-a-gregoriancalendar – sproketboy