Klasse | Jahr | Mond | Tag | Zeit | Zone | Verwenden |
---|---|---|---|---|---|---|
ZonedDateTime | ○ | ○ | ○ | ○ | ○ | Strenge Datums- und Uhrzeitangaben |
LocalDateTime | ○ | ○ | ○ | ○ | X | Datums- und Uhrzeitinformationen für den täglichen Gebrauch |
LocalDate | ○ | ○ | ○ | X | X | Geburtstag |
LocalTime | X | X | X | ○ | X | Alarmzeit usw. |
Year | ○ | X | X | X | X | Erscheinungsjahr usw. |
YearMonth | ○ | ○ | X | X | X | Ablaufdatum der Karte usw. |
Month | X | ○ | X | X | X | Abrechnungsmonat usw. |
MonthDay | X | ○ | ○ | X | X | Japanische Feiertage usw. |
Von diesen habe ich LocalDate verwendet, um nach 10 Tagen zu berechnen.
python
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
//Verwenden Sie die aus Java 8 hinzugefügte Zeit-API
//Holen Sie sich das Datum 10 Tage später
public class TenDaysCalendarNewAPI {
public static void main(String[] args) {
LocalDate now = LocalDate.now();
LocalDate future = now.plusDays(10);
//Anzeige ohne Angabe des Formats
System.out.println("■ Zeigen Sie den LocalDate-Typ unverändert an");
System.out.println(now);
System.out.println(future);
System.out.println();
//Anzeige durch Angabe des Formats
System.out.println("■ Anzeige mit DateTimeFormatter");
DateTimeFormatter f = DateTimeFormatter.ofPattern("JJJJ Jahr MM Monat TT Tag");
System.out.println(now.format(f));
System.out.println(future.format(f));
System.out.println();
System.out.println("■ Anzeige mit SimpleDateFormat");
SimpleDateFormat f2 = new SimpleDateFormat("JJJJ Jahr MM Monat TT Tag");
System.out.println(f.format(now));
System.out.println(f.format(future));
}
}
Ausführungsergebnis
■ Zeigen Sie den LocalDate-Typ unverändert an
2020-10-12
2020-10-22
■ Anzeige mit DateTimeFormatter
12. Oktober 2020
22. Oktober 2020
■ Anzeige mit SimpleDateFormat
12. Oktober 2020
22. Oktober 2020
Ich hatte das Gefühl, dass es einfach war, intuitiv damit umzugehen. Das ist, wenn Sie das Format angeben,
SimpleDateFormat übergibt Datumsinformationen an SimpleDateFormat DateTimeFormatter gibt das Format von DateTimeFormatter für Datumsinformationen an
Das ist der Teil.
Ich weiß nicht, was drin ist,
Für mich
System.out.println(f.format(now));
Es ist schwer, den Teil zu verstehen, oder es ist einfach so, aber ich fühlte mich irgendwie unwohl.
System.out.println(now.format(f));
Es war einfacher, das Bild wie "Konvertieren der aktuellen Datumsinformationen in Informationen in dem Format, das an das Argument der Formatmethode übergeben wurde" zu verstehen!
Recommended Posts