Date/Time Średniozaawansowany

Pobieraj znaczniki czasu z precyzją mikro- lub nanosekundową.

✕ Java 8
// Millisecond precision only
long millis =
    System.currentTimeMillis();
// 1708012345678
✓ Java 9+
// Microsecond/nanosecond precision
Instant now = Instant.now();
// 2025-02-15T20:12:25.678901234Z
long nanos = now.getNano();
Widzisz problem z tym kodem? Daj nam znać.
🎯

Wyższa precyzja

Znaczniki mikro-/nanosekundowe zamiast milisekundowych.

📐

Bezpieczne typowanie

Instant niesie swoją precyzję — żadnych niejednoznacznych longów.

🌐

Bazuje na UTC

Instant jest zawsze w UTC — bez zamieszania ze strefami czasowymi.

Stare podejście
Milisekundy
Nowoczesne podejście
Nanosekundy
Od JDK
9
Poziom trudności
Średniozaawansowany
Instant z precyzją nanosekundową
Dostępne

Szeroko dostępne od JDK 9 (wrzesień 2017)

Java 9 poprawiła rozdzielczość zegara, dzięki czemu Instant.now() przechwytuje precyzję mikrosekundową na większości platform (nanosekundową na niektórych). Stare currentTimeMillis() daje tylko milisekundy.