📢 Nuovo Corso Bootstrap Completo disponibile!

Data e Ora in Java

La gestione delle date e dell’ora è essenziale in molte applicazioni. In questa lezione, esploreremo come ottenere la data corrente, analizzare date da testo e approfondire la formattazione delle date e dell’ora in Java.

Ottenere la Data e l’Ora Attuali

Java offre la classe java.util.Date per rappresentare una data e un’ora. Per ottenere la data e l’ora attuali, possiamo utilizzare la classe java.util.Calendar o la classe java.time.LocalDateTime introdotta in Java 8.

import java.util.Calendar;
import java.time.LocalDateTime;
public class GestioneDataOra {
public static void main(String[] args) {
// Utilizzo di Calendar per ottenere la data e l'ora attuali
Calendar cal = Calendar.getInstance();
System.out.println("Data e ora attuali (Calendar): " + cal.getTime());
// Utilizzo di LocalDateTime per ottenere la data e l'ora attuali
LocalDateTime now = LocalDateTime.now();
System.out.println("Data e ora attuali (LocalDateTime): " + now);
}
}

Analizzare Date da Testo

Java consente di analizzare date da testo utilizzando la classe java.text.SimpleDateFormat. Questo è utile quando si deve convertire una stringa in un oggetto Date.

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class AnalisiDate {
public static void main(String[] args) {
String input = "2023-08-24";
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
try {
Date date = format.parse(input);
System.out.println("Data analizzata: " + date);
} catch (ParseException e) {
System.out.println("Errore nell'analisi della data.");
}
}
}

Formattazione Avanzata delle Date e dell’Ora

La formattazione delle date e dell’ora può essere personalizzata utilizzando la classe java.text.SimpleDateFormat. Puoi definire modelli per creare output di data e ora personalizzati.

import java.text.SimpleDateFormat;
import java.util.Date;
public class FormattazioneDate {
public static void main(String[] args) {
Date now = new Date();
SimpleDateFormat format = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");
String formattedDate = format.format(now);
System.out.println("Data e ora formattate: " + formattedDate);
}
}

Aggiunta e Sottrazione di Date e Ora

Per aggiungere o sottrarre giorni, mesi o anni a una data, possiamo utilizzare la classe java.util.Calendar o le nuove classi java.time.LocalDate, java.time.LocalTime e java.time.LocalDateTime.

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit;
public class OperazioniDataOra {
public static void main(String[] args) {
LocalDate oggi = LocalDate.now();
LocalDate domani = oggi.plusDays(1);
LocalDate dopoDueSettimane = oggi.plusWeeks(2);
LocalDateTime oraAttuale = LocalDateTime.now();
LocalDateTime fraUnOra = oraAttuale.plusHours(1);
LocalDateTime traDueOre = oraAttuale.plus(2, ChronoUnit.HOURS);
System.out.println("Domani: " + domani);
System.out.println("Dopo due settimane: " + dopoDueSettimane);
System.out.println("Fra un'ora: " + fraUnOra);
System.out.println("Tra due ore: " + traDueOre);
}
}

Conclusione

La gestione delle date e dell’ora è fondamentale in molte applicazioni. Con Java, puoi ottenere la data e l’ora attuali, analizzare date da testo, formattare le date in vari modelli e eseguire operazioni di aggiunta e sottrazione con facilità. Sfrutta le classi Calendar e java.time.* per gestire in modo efficiente le date e l’ora nei tuoi programmi.