„Mir ist eingefallen, dass ich dir etwas über die Arbeit mit Datteln erzählen wollte.“

„Sie haben mir bereits gesagt, dass Java über die Date-Klasse verfügt und ich diese Klasse verwenden kann, um mit Datumsangaben zu arbeiten.“

„Hmm. Nun, die Date-Klasse ist schon seit einiger Zeit veraltet.“

„Jetzt wird empfohlen, stattdessen die Calendar-Klasse zu verwenden, die über eine getTime()-Methode verfügt, die das aktuelle Datum zurückgibt.“

„Dies ist ein Kalenderobjekt, das normalerweise erstellt wird:“

Erstellen Sie ein Kalenderobjekt
Calendar cal = Calendar.getInstance();

„Wenn Sie diese Methode aufrufen, wird der richtige Kalender basierend auf Ihren Computereinstellungen erstellt.“

„Der ‚richtige‘ Kalender? Bedeutet das, dass es mehrere gibt?“

„Ja. Nun, es wäre genauer, ‚relevant‘ zu sagen. Tatsache ist, dass die Erde nicht nur einen, sondern viele Kalender hat. Fast jeder von ihnen ist mit einer Religion oder einem Land verbunden.“

„Das Jahr kann unterschiedlich sein, je nachdem, in welchem ​​Land Sie sich befinden.“

„Hier finden Sie Beispiele der gängigsten Kalender.“

Kalenderklasse Kalendername
Gregorianischer Kalender Christlicher gregorianischer Kalender
Buddhistischer Kalender Buddhistischer Kalender
Japanischer Kaiserkalender Japanischer Kaiserkalender

„Es gibt auch den chinesischen Kalender, den islamischen Kalender und viele mehr.“

"Ich verstehe."

„Um das aktuelle Datum zu erhalten, müssen Sie Code wie diesen schreiben:“

Holen Sie sich die aktuelle Uhrzeit
Calendar cal = Calendar.getInstance();
Date date = cal.getTime();

„Die Calendar-Klasse verfügt über viele Methoden, mit denen Sie schnell Informationen zu Datum und Uhrzeit abrufen können.“

Code Kommentare
Calendar calendar = Calendar.getInstance();

int era = calendar.get(Calendar.ERA);
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);

int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
int hour = calendar.get(Calendar.HOUR);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
Ära 
Jahr 
Monat 
Tag des Monats

Wochentag (Mo, Di, Mi, …)
Stunde 
Minute 
Sekunde

„Manchmal muss man wirklich nur einen Teil der verfügbaren Informationen abrufen. Zum Beispiel das aktuelle Jahr oder den aktuellen Wochentag.“

„Aber manchmal muss man einfach das Datum im richtigen Format anzeigen.“

„Zum Beispiel in der Logdatei oder woanders.“

„Oder erstellen Sie ein Format, das der Benutzer anpassen kann. Was machen Sie dann?“

„Auch hierfür gibt es spezielle Klassen. Für die von Ihnen beschriebene Aufgabe ist die Klasse SimpleDateFormat perfekt geeignet:“

So zeigen Sie ein Datum im gewünschten Format an
Calendar calendar = Calendar.getInstance();

DateFormat formatter = new SimpleDateFormat("MM-DD-YY");

String message = formatter.format(calendar.getTime());

„Ah. Ich erinnere mich. Du hast mir bereits einiges über SimpleDateFormat erklärt, aber ich erinnere mich ehrlich gesagt nicht an viel.“

„Es ist alles sehr einfach. Sie erstellen ein SimpleDateFormat- Objekt und übergeben ihm das Datumsmuster, das Sie erhalten möchten. Dann rufen Sie die Formatmethode auf und Sie erhalten das übergebene Datum in der gewünschten Form.“

„Klingt interessant. Ich hätte gerne mehr Details.“

„Hier bitte. Die Details. Hier sind einige der Buchstaben, die im Datumsmuster verwendet werden können:“

Brief Beschreibung
G Ersetzt durch die Ära (n. Chr. oder v. Chr.)
j Durch die Jahresangabe ersetzt
M Durch den Monat ersetzt
w Anzahl der Wochen im Jahr
W Anzahl der Wochen im Monat
D Anzahl der Tage im Jahr
D Tag des Monats
F Wochentag im Monat
E Wochentag
A AM/PM (vor oder nach Mittag)
H Stunde im 24-Stunden-Format (0-23)
k Stunde im 24-Stunden-Format (1-24)
K Stunde im 12-Stunden-Format (0-11)
H Stunde im 12-Stunden-Format (1-12)
M Protokoll
S Sekunden
S Millisekunden
z Zeitzone, formatiert wie folgt: Pacific Standard Time, PST
Z Zeitzone, formatiert wie folgt: -0800/td>

„Cool! Das ist so ziemlich alles, was Sie brauchen.“

„Es gibt immer noch einige Nuancen im Zusammenhang mit der Wiederholung dieser Buchstaben.“

„Wenn Sie YY schreiben, erhalten Sie die letzten beiden Ziffern des Jahres. Wenn Sie YYYY schreiben, erhalten Sie alle vier Ziffern des Jahres.“

„Monate sind auch etwas kompliziert. MM ist die Zahl des Monats. MMM ist eine dreibuchstabige Abkürzung für den Monat, also Jan, Feb, Mar, Apr, May usw. MMMM steht für den vollständigen Namen des Monats.“ ."

„Sie können auch den gesamten Wochentag (mit EEEE) oder nur die ersten beiden Buchstaben (mit EE) anzeigen.“

„Danke, Rishi. Diese SimpleDateFormat-Klasse ist wirklich nützlich. Jetzt weiß ich es.“

„Viel Spaß beim Benutzen! Und viel Glück!“