Data e hora Java
Datas Java
Java não possui uma classe Date embutida, mas podemos importar o java.time
pacote para trabalhar com a API de data e hora. O pacote inclui muitas classes de data e hora. Por exemplo:
Class | Description |
---|---|
LocalDate |
Represents a date (year, month, day (yyyy-MM-dd)) |
LocalTime |
Represents a time (hour, minute, second and nanoseconds (HH-mm-ss-ns)) |
LocalDateTime |
Represents both a date and a time (yyyy-MM-dd-HH-mm-ss-ns) |
DateTimeFormatter |
Formatter for displaying and parsing date-time objects |
Se você não sabe o que é um pacote, leia nosso Tutorial de Pacotes Java .
Exibir data atual
Para exibir a data atual, importe a java.time.LocalDate
classe e use seu now()
método:
Exemplo
import java.time.LocalDate; // import the LocalDate class
public class Main {
public static void main(String[] args) {
LocalDate myObj = LocalDate.now(); // Create a date object
System.out.println(myObj); // Display the current date
}
}
A saída será:
2022-01-29
Exibir hora atual
Para exibir a hora atual (hora, minuto, segundo e nanossegundos), importe a java.time.LocalTime
classe e use seu now()
método:
Exemplo
import java.time.LocalTime; // import the LocalTime class
public class Main {
public static void main(String[] args) {
LocalTime myObj = LocalTime.now();
System.out.println(myObj);
}
}
A saída será:
08:24:26.743356
Exibir data e hora atuais
Para exibir a data e hora atuais, importe a java.time.LocalDateTime
classe e use seu now()
método:
Exemplo
import java.time.LocalDateTime; // import the LocalDateTime class
public class Main {
public static void main(String[] args) {
LocalDateTime myObj = LocalDateTime.now();
System.out.println(myObj);
}
}
A saída será:
2022-01-29T08:24:26.810652
Formatação de data e hora
O "T" no exemplo acima é usado para separar a data da hora. Você pode usar a DateTimeFormatter
classe com o ofPattern()
método no mesmo pacote para formatar ou analisar objetos de data e hora. O exemplo a seguir removerá o "T" e os nanossegundos da data e hora:
Exemplo
import java.time.LocalDateTime; // Import the LocalDateTime class
import java.time.format.DateTimeFormatter; // Import the DateTimeFormatter class
public class Main {
public static void main(String[] args) {
LocalDateTime myDateObj = LocalDateTime.now();
System.out.println("Before formatting: " + myDateObj);
DateTimeFormatter myFormatObj = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss");
String formattedDate = myDateObj.format(myFormatObj);
System.out.println("After formatting: " + formattedDate);
}
}
A saída será:
Before Formatting: 2022-01-29T08:24:26.810590
After Formatting: 29-01-2022 08:24:26
O ofPattern()
método aceita todos os tipos de valores, se você quiser exibir a data e a hora em um formato diferente. Por exemplo:
Value | Example | Tryit |
---|---|---|
yyyy-MM-dd | "1988-09-29" | |
dd/MM/yyyy | "29/09/1988" | |
dd-MMM-yyyy | "29-Sep-1988" | |
E, MMM dd yyyy | "Thu, Sep 29 1988" |