Java 8 pour démarrer maintenant ~ API de date et d'heure ~

Dernière fois: Suite Java8 ~ Stream API ~ Deux fois avant: Java 8 ~ for Each et expression Lambda ~

API de date-heure ajoutée dans Java 8

Lors de la gestion de la date et de l'heure dans Java7, la rétention de la valeur était séparée de la classe Date et l'opération était séparée de la classe Calendar, mais des API pouvant être gérées collectivement dans Java8 ont été ajoutées.

Classe typique

Fonctionnalité

Comment utiliser

L'utilisation de LocalDateTime, OffsetDateTime et ZonedDateTime est presque la même, donc je vais expliquer avec LocalDateTime.

Obtenir l'heure actuelle

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

Généré en spécifiant la date et l'heure

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

Il existe une méthode statique qui peut être générée en spécifiant l'année, le mois, le jour, l'heure, la minute, la seconde et la nanoseconde. Les champs non spécifiés seront nuls Le mois peut être spécifié de 1 à 12, contrairement à la classe Calendar.

Conversion à partir de la date / du calendrier

Pour convertir Date / Calendar en LocalDateTime, utilisez la méthode nouvellement ajoutée .toInstant () et passez par Instant. Obtenez la valeur par défaut du système car vous devez spécifier le ZoneId

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

Obtenir la date et l'heure

Il existe une méthode pour obtenir chaque année, mois, jour, heure, minute, seconde, nanoseconde

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

La méthode getMonth () retourne un type d'énumération Mois qui représente le mois.

Manipulation de la date et de l'heure

Jusqu'à Java 7, les opérations dont la classe Calendar était en charge peuvent être gérées directement avec LocalDateTime. Il existe une méthode qui renvoie LocalDateTime ajouté (plus) et soustrait (moins) pour chaque année, mois, jour, heure, minute, seconde et nanoseconde. ** La valeur de l'instance d'origine ne change pas **

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

Formateur

Utilisez la méthode ʻofPattern de la classe DateTimeFormatter` pour formater la date et l'heure.

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

Vous pouvez également utiliser des constantes définies au format ISO

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 pour démarrer maintenant ~ API de date et d'heure ~
Java 8 ~ Stream API ~ pour commencer maintenant
Java8 pour démarrer maintenant ~ Facultatif ~
[Java] Opérations de date / heure
Java 8 pour démarrer maintenant ~ for Each et expression lambda ~
[Java] Introduction à l'API Stream
Gérez l'API de date et d'heure Java 8 avec Thymeleaf avec Spring Boot
Je souhaite utiliser l'API Java 8 DateTime lentement (maintenant)
Exemple de code pour analyser la date et l'heure avec SimpleDateFormat de Java
Il est maintenant temps de commencer avec l'API Stream
[Java] Utilisez ResolverStyle.LENIENT pour bien gérer la date et l'heure
[MySQL] [java] Date et heure de réception
Java, interface pour partir du débutant
Java, des tableaux pour débuter avec les débutants
J'ai essayé de résumer Java 8 maintenant
Introduction à Java pour la première fois # 2
Étude de Java 8 (API de date dans le package java.time)
Convertir l'heure UTC Java en heure JST
[Java] Comment mesurer le temps d'exécution du programme
Essayez différentes méthodes d'API Java Stream (maintenant)
Comment obtenir la date avec Java
Deux façons de démarrer un thread en Java + @
Date et l'heure
[Java] Obtenez et affichez la date 10 jours plus tard à l'aide de l'API Time ajoutée à partir de Java 8.
API Java Stream
Comment utiliser l'API Java avec des expressions lambda
Méthode d'acquisition de la date et de l'heure à l'aide de l'API DateAndTime
[Java] Introduction à Java
La date et l'heure de java8 ont été mises à jour
Introduction à Java
[Java] Comment utiliser la classe Calendar et la classe Date
Fonctionnalités susceptibles d'entrer dans Java 10 pour le moment
[Java] Je souhaite calculer la différence par rapport à la date
Changer la date et l'heure en notation japonaise dans Rails
[Pour les débutants] Comment utiliser Stream API après Java 8
Résumé de l'API de communication Java (1) Comment utiliser Socket
Résumé de l'API de communication Java (3) Comment utiliser SocketChannel
[Java] J'ai essayé de mettre en œuvre la recherche de produits de l'API Yahoo
Résumé de l'API de communication Java (2) Comment utiliser HttpUrlConnection
~ J'ai essayé d'apprendre la programmation fonctionnelle avec Java maintenant ~
[Java] Plates-formes parmi lesquelles choisir pour le développement Java à partir de maintenant (2020)
[Java] Comment rompre une ligne avec StringBuilder
Changements de Java 8 à Java 11
Somme de Java_1 à 100
Emballez la réponse de l'API (java)
[Java] API / carte de flux
[Java] Connectez-vous à MySQL
Dépannage de l'API Java Docker-Client
Améliorations de Kotlin à Java
Pratique de l'API Java8 Stream
De Java à Ruby !!
API Zabbix en Java
Consultez les annotations Java maintenant
Manipulation de la date dans Java 8
Un résumé concis des API de date / heure Java 8 susceptibles d'être utilisées fréquemment
Introduction à la commande java