Mit einem festen Threadpool kannst du die Elemente einer Liste mit einer selbst festgelegten maximalen Threadanzahl verarbeiten. Kleines vollständiges Beispiel Das Beispiel verwendet Java 21 ode...
Wie setzt man in Java ein Calendar-Objekt auf morgen? Zwei Beispiele mit Bewertung
Antwort vomAm zuverlässigsten stellst du bei einem Calendar-Objekt mit add(Calendar.DAY_OF_MONTH, 1) den nächsten Kalendertag ein.
Beispiel 1: Mit add(), empfohlen
import java.util.Calendar;
Calendar morgen = Calendar.getInstance();
morgen.add(Calendar.DAY_OF_MONTH, 1);
System.out.println(morgen.getTime());
Bewertung: Die klare und robuste Lösung. Die Methode berücksichtigt Monats- und Jahreswechsel automatisch. Da getInstance() mit dem aktuellen Zeitpunkt initialisiert wird, ergibt das morgen gemäß der Standardzeitzone des Systems. Bei einem vorhandenen Calendar-Objekt wird dagegen dessen gespeichertes Datum um einen Tag erhöht.
Beispiel 2: Mit set() und toleranter Normalisierung
import java.util.Calendar;
Calendar morgen = Calendar.getInstance();
morgen.setLenient(true);
morgen.set(
Calendar.DAY_OF_MONTH,
morgen.get(Calendar.DAY_OF_MONTH) + 1
);
// Berechnung und Normalisierung auslösen
System.out.println(morgen.getTime());
Bewertung: Funktioniert, ist aber weniger empfehlenswert. Hier wird zunächst der Tag des Monats erhöht. Der ausdrücklich aktivierte tolerante Modus normalisiert überlaufende Werte beim Berechnen des Zeitpunkts: Beispielsweise wird aus dem rechnerischen 32. Januar der 1. Februar. Ohne diesen Modus würde ein ungültiger Feldwert bei der Berechnung eine IllegalArgumentException auslösen.
Wichtiger Unterschied: add() statt roll()
roll(Calendar.DAY_OF_MONTH, 1) ist kein gleichwertiger Ersatz: Die Methode verändert größere Felder nicht. Am 31. Januar würde sie zum 1. Januar statt zum 1. Februar wechseln. Für „morgen“ ist deshalb add() die passende Wahl.
Quellen:
Erstellt mit GPT-6.1 Sol (OpenAI) auf Basis einer aktuellen Websuche.
Verwandte Fragen
Welche ganzzahligen Datentypen gibt es in Java und welche Minimal- und Maximalwerte haben sie?
Java hat fünf primitive ganzzahlige Datentypen: byte, short, int, long und den vorzeichenlosen Zeichentyp char. | Datentyp | Bitbreite | Minimaler Wert | Maximaler Wert | |---|---:|---:|---:| |...
Welche Vor- und Nachteile hat PHP und welche Alternativen sind besser?
PHP ist nicht pauschal schlechter: TypeScript bietet frühere Typprüfungen, Python mit Django viele fertige Webfunktionen, jeweils mit eigenen Nachteilen. „Umständlich und nervig&...
Wie setzt man in Java das Datum eines Calendar-Objekts aus einem String?
Wandle den String mit SimpleDateFormat in ein Date um und übergib dieses anschließend an Calendar.setTime(). Das folgende Beispiel liest ein Datum im Format „Tag.Monat.Jahr“ ei...
Kann man ein Python-3-Programm über HTTP zugänglich machen?
Ein Python-3-Programm lässt sich nicht in HTTP umwandeln, aber über HTTP als Webanwendung zugänglich machen. HTTP ist ein Übertragungsprotokoll, keine Programmiersprache: Dein Pro...
Wie migriert man ein PHP-5.6-Skript auf PHP 8.4?
Ja, ein PHP-5.6-Skript lässt sich auf PHP 8.4 migrieren, aber entfernte Funktionen und geändertes Verhalten erfordern Anpassungen. Ein bloßer Wechsel der Serverversion reicht nicht zu...