1. LocalDateTime
klass
Klassen LocalDateTime
kombinerar funktionerna i klasserna LocalDate
och LocalTime
: den lagrar både ett datum och en tid. Dess objekt är också oföränderliga, och dess metoder liknar dem för klasserna LocalDate
och .LocalTime
Hämta aktuellt datum och tid
Allt är som du förväntar dig här: vi använder now()
metoden. Exempel:
Koda | Konsolutgång |
---|---|
|
|
När de visas på skärmen separeras datum och tid med bokstaven T
.
Få ett specifikt datum och tid
Föga förvånande, allt liknar klasserna LocalDate
och LocalTime
- vi använder of()
metoden:
... = LocalDateTime.of(year, month, day, hours, minutes, seconds);
För det första finns det parametrar som anger datumet i samma format som i klassen LocalDate
. Sedan finns det parametrar som anger tiden i samma format som i klassen LocalTime
. En lista över alla varianter av of()
metoden ges nedan:
Metoder |
---|
|
|
|
|
|
|
|
Du kan ställa in datumet direkt eller ställa in det indirekt genom LocalDate
och LocalTime
objekt:
Koda |
---|
|
Konsolutgång |
|
Klassen LocalDateTime
har metoder för att få element av ett datum och/eller tid. De speglar exakt metoderna för klasserna LocalDate
och . LocalTime
Vi kommer inte att upprepa dem här.
2. Instant
klass
Javas skapare har heller inte glömt gamla skolans sätt.
Date Time API innehåller en Instant-klass för att arbeta med tid avsedd för processer som sker i datorer. Istället för timmar, minuter och sekunder, handlar det om sekunder, millisekunder och nanosekunder.
Den här klassen har två fält som representerar:
- antalet sekunder som har förflutit sedan 1 januari 1970
- ett antal nanosekunder
Var klassen gjord för utvecklare? Ja. Det är därför den beräknar tiden i Unix-tid, som börjar i början av 1970.
Man kan till och med säga att Instant
klassen är en förenklad version av Date
klassen, som bara behåller det som programmerare behöver.
Du kan få ett Instant
objekt på exakt samma sätt som ett LocalTime
objekt:
Instant timestamp = Instant.now();
Where timestamp
är en Instant
variabel och är ett anrop till klassens statiska metod .Instant.now()
now()
Instant
Exempel:
Koda | Konsolutgång |
---|---|
|
|
Du kan också skapa ett nytt objekt med hjälp av varianter av of()
metoden genom att skicka in den tid som förflutit sedan 1 januari 1970:
|
Du måste passera antalet millisekunder |
|
Du måste passera antalet sekunder |
|
Du måste passera sekunderna och nanosekunderna |
Metoder tillgängliga på Instant
objekt
Klassen Instant har två metoder som returnerar värdena för dess fält:
|
Antal sekunder som har förflutit sedan 1 januari 1970 |
|
Nanosekunder. |
|
Antal millisekunder som har förflutit sedan 1 januari 1970 |
Det finns också metoder för att skapa ett nytt Instant
objekt baserat på ett befintligt:
|
Lägger till sekunder till den aktuella tiden |
|
Lägger till millisekunder |
|
Lägger till nanosekunder |
|
Subtraherar sekunder |
|
Subtraherar millisekunder |
|
Subtraherar nanosekunder |
Exempel:
Koda | Konsolutgång |
---|---|
|
|
GO TO FULL VERSION