1. LocalDateTimeclasse
La LocalDateTimeclasse combina le capacità delle classi LocalDatee LocalTime: memorizza sia una data che un'ora. Anche i suoi oggetti sono immutabili ei suoi metodi sono simili a quelli delle classi LocalDatee LocalTime.
Ottenere la data e l'ora correnti
Tutto è come ti aspetteresti qui: usiamo il now()metodo. Esempio:
| Codice | Uscita console |
|---|---|
|
|
Quando vengono visualizzate sullo schermo, la data e l'ora sono separate dalla lettera T.
Ottenere una data e un'ora specifiche
Non sorprende che tutto sia simile alle classi LocalDatee LocalTime: usiamo il of()metodo:
... = LocalDateTime.of(year, month, day, hours, minutes, seconds);
Innanzitutto, ci sono parametri che specificano la data negli stessi formati della LocalDateclasse. Poi ci sono parametri che specificano l'ora negli stessi formati della LocalTimeclasse. Di seguito è riportato un elenco di tutte le varianti del of()metodo:
| Metodi |
|---|
|
|
|
|
|
|
|
Puoi impostare la data direttamente o indirettamente tramite LocalDatee LocalTimeoggetti:
| Codice |
|---|
|
| Uscita console |
|
La LocalDateTimeclasse ha metodi per ottenere elementi di una data e/o un'ora. Rispecchiano esattamente i metodi delle classi LocalDatee LocalTime. Non li ripeteremo qui.
2. Instantclasse
Anche i creatori di Java non hanno dimenticato i modi della vecchia scuola.
L'API Date Time include una classe Instant per lavorare con l'ora destinata ai processi che si verificano nei computer. Invece di ore, minuti e secondi, si tratta di secondi, millisecondi e nanosecondi.
Questa classe ha due campi che rappresentano:
- il numero di secondi trascorsi dal 1 gennaio 1970
- un certo numero di nanosecondi
La classe è stata creata per gli sviluppatori? SÌ. Ecco perché calcola il tempo in Unix-time, che inizia all'inizio del 1970.
Si potrebbe anche dire che la Instantclasse è una versione semplificata della Dateclasse, che conserva solo ciò di cui i programmatori hanno bisogno.
Puoi ottenere un Instantoggetto esattamente nello stesso modo di un LocalTimeoggetto:
Instant timestamp = Instant.now();
Dove timestampè una Instantvariabile ed è una chiamata al metodo statico della classe.Instant.now()now()Instant
Esempio:
| Codice | Uscita console |
|---|---|
|
|
Puoi anche creare un nuovo oggetto usando variazioni del of()metodo passando nel tempo trascorso dal 1 gennaio 1970:
|
Devi passare il numero di millisecondi |
|
Devi passare il numero di secondi |
|
Devi passare i secondi e i nanosecondi |
Metodi disponibili sugli Instantoggetti
La classe Instant ha due metodi che restituiscono i valori dei suoi campi:
|
Numero di secondi trascorsi dal 1° gennaio 1970 |
|
Nanosecondi. |
|
Numero di millisecondi trascorsi dal 1° gennaio 1970 |
Esistono anche metodi per creare nuovi Instantoggetti basati su uno esistente:
|
Aggiunge secondi all'ora corrente |
|
Aggiunge millisecondi |
|
Aggiunge nanosecondi |
|
Sottrae i secondi |
|
Sottrae i millisecondi |
|
Sottrae i nanosecondi |
Esempi:
| Codice | Uscita console |
|---|---|
|
|
GO TO FULL VERSION