Java 8 startet jetzt ~ Datums- und Uhrzeit-API ~

Letztes Mal: Fortsetzung Java8 ~ Stream API ~ Zwei Mal zuvor: Java 8 ~ für jeden und Lambda-Ausdruck ~

Datums- / Uhrzeit-API in Java 8 hinzugefügt

Bei der Behandlung von Datum und Uhrzeit in Java7 wurde die Werterhaltung von der Datumsklasse und die Operation von der Kalenderklasse getrennt. Es wurden jedoch APIs hinzugefügt, die in Java8 gemeinsam verarbeitet werden können.

Typische Klasse

Charakteristisch

Wie benutzt man

Die Verwendung von LocalDateTime, OffsetDateTime und ZonedDateTime ist nahezu identisch, daher werde ich dies mit LocalDateTime erläutern.

Aktuelle Zeit abrufen

LocalDateTime current = LocalDateTime.now();  // -> 2018-03-03T12:09:50.875

Wird durch Angabe von Datum und Uhrzeit generiert

LocalDateTime atMin = LocalDateTime.of(2018,3,3,12,1);                  // -> 2018-03-03T12:01
LocalDateTime atSec = LocalDateTime.of(2018,3,3,12,1,23);               // -> 2018-03-03T12:01:23
LocalDateTime atNanoSec = LocalDateTime.of(2018,3,3,12,1,23,123456789); // -> 2018-03-03T12:01:23.123456789

Es gibt eine statische Methode, die durch Angabe von Jahr, Monat, Tag, Stunde, Minute, Sekunde und Nanosekunde generiert werden kann. Nicht angegebene Felder sind Null Der Monat kann im Gegensatz zur Kalenderklasse mit 1 bis 12 angegeben werden.

Umrechnung von Datum / Kalender

Verwenden Sie zum Konvertieren von Datum / Kalender in LocalDateTime die neu hinzugefügte Methode ".toInstant ()" und führen Sie "Instant" durch. Holen Sie sich den Systemstandard, da Sie die ZoneId angeben müssen

Calendar now = Calendar.getInstance();
Instant nowInstant = now.toInstant();
LocalDateTime fromCalendar = LocalDateTime.ofInstant(nowInstant, ZoneId.systemDefault());

Holen Sie sich Datum und Uhrzeit

Es gibt eine Methode, um jedes Jahr, jeden Monat, jeden Tag, jede Stunde, jede Minute, jede Sekunde und jede Nanosekunde zu ermitteln

LocalDateTime current = LocalDateTime.now(); // -> 2018-03-03T12:09:50.875

System.out.println(current.Hour());          // -> 12
System.out.println(current.getMonth());      // -> MARCH
System.out.println(current.getMonthValue()); // -> 3

Die Methode "getMonth ()" gibt einen Aufzählungstyp Monat zurück, der den Monat darstellt.

Manipulation von Datum und Uhrzeit

Bis Java 7 können die Vorgänge, für die die Calendar-Klasse verantwortlich war, direkt mit LocalDateTime ausgeführt werden. Es gibt eine Methode, die LocalDateTime für jedes Jahr, jeden Monat, jeden Tag, jede Stunde, jede Minute, jede Sekunde und jede Nanosekunde addiert (plus) und subtrahiert (minus) zurückgibt. ** Der Wert der ursprünglichen Instanz ändert sich nicht **

LocalDateTime current = LocalDateTime.now();     // -> 2018-03-03T12:09:50.875

LocalDateTime plusMin = current.plusMinutes(10); // -> 2018-03-03T12:19:50.875
LocalDateTime plusMonth = current.plusMonths(2); // -> 2018-05-03T12:09:50.875
LocalDateTime minusYear = current.minusYears(1); // -> 2017-03-03T12:09:50.875

Formatierer

Verwenden Sie die Methode "ofPattern" der Klasse "DateTimeFormatter", um Datum und Uhrzeit zu formatieren.

LocalDateTime current = LocalDateTime.now();
System.out.println(current.format(DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss.SSS"))); // -> 2018/03/03 12:09:50.875

Sie können auch Konstanten verwenden, die im ISO-Format definiert sind

LocalDateTime current = LocalDateTime.now();
System.out.println(current.format(DateTimeFormatter.ISO_DATE));       // -> 2018-03-03
System.out.println(current.format(DateTimeFormatter.ISO_LOCAL_TIME)); // -> 12:09:50.875

Recommended Posts

Java 8 startet jetzt ~ Datums- und Uhrzeit-API ~
Java 8 ~ Stream API ~ startet jetzt
Java8 startet jetzt ~ Optional ~
[Java] Datums- / Zeitoperationen
Java 8 startet jetzt ~ für jeden und Lambda-Ausdruck ~
[Java] Einführung in die Stream-API
Behandeln Sie die Java 8-Datums- und Uhrzeit-API mit Thymeleaf mit Spring Boot
Ich möchte die Java 8 DateTime-API (jetzt) langsam verwenden.
Beispielcode zum Parsen von Datum und Uhrzeit mit Java SimpleDateFormat
Jetzt ist es an der Zeit, mit der Stream-API zu beginnen
[Java] Verwenden Sie ResolverStyle.LENIENT, um Datum und Uhrzeit gut zu handhaben
[MySQL] [Java] Datum und Uhrzeit empfangen
Java, Schnittstelle für Anfänger
Java, Arrays für Anfänger
Ich habe jetzt versucht, Java 8 zusammenzufassen
Einführung in Java zum ersten Mal # 2
Studieren Sie Java 8 (Datums-API im Paket java.time)
Konvertieren Sie von der Java-UTC-Zeit in die JST-Zeit
[Java] So messen Sie die Programmausführungszeit
Probieren Sie verschiedene Java Stream API-Methoden aus (jetzt)
So erhalten Sie das Datum mit Java
Zwei Möglichkeiten, einen Thread in Java + @ zu starten
Datum (und Uhrzeit
[Java] Abrufen und Anzeigen des Datums 10 Tage später mithilfe der von Java 8 hinzugefügten Zeit-API.
Java Stream API
Verwendung der Java-API mit Lambda-Ausdrücken
Methode zur Erfassung von Datum und Uhrzeit mithilfe der DateAndTime-API
[Java] Einführung in Java
Das Datum und die Uhrzeit von java8 wurden aktualisiert
Einführung in Java
[Java] Verwendung der Kalenderklasse und der Datumsklasse
Funktionen, die derzeit wahrscheinlich in Java 10 eingegeben werden
[Java] Ich möchte die Differenz zum Datum berechnen
Ändern Sie Datum und Uhrzeit in Rails in japanische Notation
[Für Anfänger] So bedienen Sie die Stream-API nach Java 8
Zusammenfassung der Java-Kommunikations-API (1) Verwendung von Socket
Zusammenfassung der Java-Kommunikations-API (3) Verwendung von SocketChannel
[Java] Ich habe versucht, die Yahoo API-Produktsuche zu implementieren
Zusammenfassung der Java-Kommunikations-API (2) Verwendung von HttpUrlConnection
~ Ich habe jetzt versucht, funktionale Programmierung mit Java zu lernen ~
[Java] Plattformen zur Auswahl für die Java-Entwicklung ab sofort (2020)
[Java] So unterbrechen Sie eine Zeile mit StringBuilder
Änderungen von Java 8 zu Java 11
Summe von Java_1 bis 100
Packen Sie die API-Antwort (Java)
[Java] Stream API / Map
[Java] Stellen Sie eine Verbindung zu MySQL her
Fehlerbehebung bei der Docker-Client Java API
Kotlins Verbesserungen an Java
Von Java zu Ruby !!
Zabbix API in Java
Überprüfen Sie jetzt die Java-Anmerkungen
Datumsmanipulation in Java 8
Eine kurze Zusammenfassung der Java 8-Datums- / Uhrzeit-APIs, die wahrscheinlich häufig verwendet werden
Einführung in den Java-Befehl