Jahr aus Datum holen in Java
-
Ermitteln des aktuellen Jahres mit
Date
undLocalDate
in Java -
Das aktuelle Jahr mit
Date
undSimpleDateFormat
in Java ermitteln -
Abrufen des aktuellen Jahres mit
Date.getYear()
undCalendar
In diesem Tutorial wird beschrieben, wie man das aktuelle Jahr in Java ermitteln kann. Wir werden die Klasse java.util.Date
verwenden, um das aktuelle Datum zu ermitteln und dann das aktuelle Jahr mit Hilfe verschiedener Methoden zu extrahieren.
Ermitteln des aktuellen Jahres mit Date
und LocalDate
in Java
Die Klasse java.util.Date
hat die Methode getyear()
, die einen Wert zurückgibt, der vom Jahr 1900 subtrahiert wird. Aber diese Methode wurde in Java schon vor längerer Zeit veraltet. Stattdessen können wir die Klasse LocalDate
, die in java.time
verfügbar ist, als bevorzugte Methode verwenden, um alle Datums- und Zeitoperationen durchzuführen.
Wir konvertieren das date
-Objekt in ein LocalDate
-Objekt, indem wir date.toInstant()
verwenden, das den Zeitpunkt der Zeit zurückgibt. Als nächstes rufen wir atZone()
auf, um die Standard-Zeitzone des Systems mit ZoneId.systemDefault()
festzulegen und den Wert an den Konstruktor von atZone()
zu übergeben. Als letztes rufen wir toLocalDate()
auf, um den Zeitwert in LocalDate
zu konvertieren.
Da wir nun ein LocalDate
-Objekt getLocalDate
haben, erhalten wir das Jahr mit getLocalDate.getYear()
.
import java.time.LocalDate;
import java.time.ZoneId;
import java.util.Date;
public class DateGetYear {
public static void main(String[] args) {
Date date = new Date();
ZoneId timeZone = ZoneId.systemDefault();
LocalDate getLocalDate = date.toInstant().atZone(timeZone).toLocalDate();
System.out.println(getLocalDate.getYear());
}
}
Ausgabe:
2021
Das aktuelle Jahr mit Date
und SimpleDateFormat
in Java ermitteln
Date
liefert sowohl das Datum als auch die Uhrzeit, wobei die Zeit auf 00:00:00 gesetzt ist. Um nur das Jahr zu erhalten, formatieren wir das Date
mit SimpleDateFormat
. Wir erzeugen ein SimpleDateFormat
-Objekt und übergeben das Format, z. B. yyyy
. Wir rufen format()
auf und verwenden das Date
als Argument. getYearFormat.format(date)
gibt das Ergebnis in Form einer Zeichenkette zurück, wie in der Ausgabe gezeigt.
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateGetYear {
public static void main(String[] args) {
Date date = new Date();
SimpleDateFormat getYearFormat = new SimpleDateFormat("yyyy");
String currentYear = getYearFormat.format(date);
System.out.println(currentYear);
}
}
2021
Abrufen des aktuellen Jahres mit Date.getYear()
und Calendar
Die letzte Methode verwendet die Klasse Calendar
, die einige Methoden von java.util.Date
ersetzen soll. Wir erstellen ein Date
-Objekt und erhalten eine Instanz von Calendar
mit calendar.getInstance()
. Danach rufen wir die Methode calendar.setTime()
auf, um die Zeit des Kalenders mit Date
zu setzen.
Um nun das Jahr zu erhalten, rufen wir calendar.get()
auf, das einen Wert des als Argument übergebenen Feldes zurückgibt. Wir übergeben Calendaer.YEAR
, um das Jahr als int
zu erhalten.
import java.util.Calendar;
import java.util.Date;
public class DateGetYear {
public static void main(String[] args) {
Date date = new Date();
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
int dateYear = calendar.get(Calendar.YEAR);
System.out.println(dateYear);
}
}
Ausgabe:
2021
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn