AFAIK java przechowuje daty w długich zmiennych jako milisekundy. W związku z tym pewnego dnia nie będzie żadnej wartości (przyczyna długo ma maksimum), która będzie odpowiadała czasowi tej chwili. Czy wiesz, kiedy to się stanie?Kiedy data java się zwinie?
Odpowiedz
to na tyle proste, aby dowiedzieć się:
public class Test {
public static void main(String[] args) {
System.out.println(new java.util.Date(Long.MAX_VALUE));
}
}
Daje wyjście (na moim pudełku):
Sun Aug 17 07:12:55 GMT 292278994
Być może trzeba będzie odjąć bit od Long.MAX_VALUE
, aby poradzić sobie ze strefą czasową przepełnioną zakresem długości, ale dadzą rozsądne pole do popisu :)
LOL, podoba mi się sposób, w jaki myślisz!aioobe przeszedł wszystko matematyczne, podczas gdy zdecydowałeś się zrobić programowo. –
Ja też to lubię :-) Daje nawet sekundę, co się zepsuje;) – aioobe
bzdura, lepiej zacznę się przygotowywać! – hvgotcodes
Zgodnie z obowiązującymi przepisami leap-year średnia liczba dni w roku będzie
365 + 1/4 − 1/100 + 1/400 = 365.2425 dni rocznie
Oznacza to, że średnio mamy 31556952000 milisekund na rok.
Długi Wartość reprezentuje liczbę milisekund od czasu Epoch (1 stycznia 1970), a maksymalna ilość reprezentowana przez długi Java 2 − 1, więc następującego obliczenia
1970 + (2 − 1)/31556952000
wynika, że ta reprezentacja będzie przelewać roku 292278994.
Można, jak Jon Skeet points out zostać potwierdzone przez
-> System.out.println(new Date(Long.MAX_VALUE));
Sun Aug 17 08:12:55 CET 292278994
+1 dla podejścia matematycznego. –
Przy tak dużych liczbach, które są używane jako daty, prawdopodobnie trzeba uwzględnić także sekundy przestępne i przyspieszenie pływowe. – Qwerky
@Qwerky, tak, też o tym myślałem i szukam astronomicznych pomiarów liczby milisekund w roku, ale wtedy uderzyło mnie, że pytanie dotyczyło implementacji daty w Javie, a to najprawdopodobniej * nie * Weź pod uwagę przyspieszenie pływowe itp :-) – aioobe
- 1. java różnica data puzzle
- 2. Java Data do milliseconds
- 3. Java Data Structures Reference
- 4. Autowirowanie Data Data Repository kończy się niepowodzeniem
- 5. Fuzzy Data parsowania z Java
- 6. Minimalna data w języku Java
- 7. Data JSON do daty Java?
- 8. Kiedy wykonuje się pliki jar JVM Java Javy?
- 9. Kiedy to się stanie?
- 10. Javascript się data w formacie
- 11. SlidingUpPanelLayout nie zwinie się po wznowieniu po OS zabić moją działalność
- 12. Kiedy Java otrzymała kompilator JIT?
- 13. Instrukcja "Kiedy" vs Java "switch"
- 14. Serwis WWW Java, data xsd zamiast dateTime
- 15. Policz liczbę razy, kiedy data się pojawia i zrób z niej wykres
- 16. Java - Interfejs rozszerzający się
- 17. Jak przekonwertować LocalDate na SQL Data Java?
- 18. Migracja do wersji Java przestarzała Data method
- 19. Czas epoki Unix do Java Data obiektu
- 20. Kiedy funkcja @ staje się przydatna?
- 21. Kiedy oprogramowanie staje się "zastrzeżone"?
- 22. Kiedy ma się nazywać PyEval_InitThreads?
- 23. Kiedy kończy się sesja PHP?
- 24. Określanie, kiedy stringByEvaluatingJavaScriptFromString zakończył się
- 25. Kiedy ładuje się całkowicie UICollectionView?
- 26. Kiedy Firefox będzie obsługiwać typ danych wejściowych HTML5 = data?
- 27. Wybierz elementy, które zaczynają się od "data-"
- 28. Kiedy powinniśmy używać dostawcy w Java 8?
- 29. jak się dowiedzieć, kiedy kończy się ładowanie listview na Androidzie
- 30. Kiedy wątek Java osiąga stan "Kostka"
Uważam, że od tego czasu oczekuje się, że słońce zajdzie nowa. Słońce już zaszło nova. –
@Paul Tomblin .... whahahahaha! :) –
Właściwie to mam zła - Java Date ma 292 milionów lat, ale według http://www.space.com/scienceastronomy/solarsystem/death_of_earth_000224.html Ziemia ma 500 milionów lat. –