Maison >Java >javaDidacticiel >Comment convertir un java.util.Date en java.time.LocalDate ?
Conversion de java.util.Date en java.time.LocalDate
Dans Java 8 et versions ultérieures, la classe java.util.Date a a été remplacé par la classe java.time.LocalDate pour représenter les dates. Par conséquent, il devient nécessaire de convertir les objets Date en objets LocalDate.
Processus de conversion
Obtenir un instantané : Convertir l'objet Date dans un Instant en utilisant toInstant() méthode.
Date input = new Date(); Instant instant = input.toInstant();
Spécifiez un fuseau horaire : Étant donné que les objets Date ne disposent pas d'informations sur le fuseau horaire, choisissez un fuseau horaire. Il peut s'agir de la valeur par défaut du système en utilisant ZoneId.systemDefault() ou d'une valeur personnalisée.
ZoneId zone = ZoneId.systemDefault();
Obtenez un ZonedDateTime : Combinez l'instantané et le fuseau horaire pour créer un ZonedDateTime.
ZonedDateTime zdt = instant.atZone(zone);
Extraire le LocalDate : Extrayez la date locale de ZonedDateTime à l'aide de la méthode toLocalDate().
LocalDate date = zdt.toLocalDate();
Optimisation Java 9 et versions ultérieures
Java 9 a introduit une méthode simplifiée pour cela conversion :
LocalDate date = LocalDate.ofInstant(input.toInstant(), ZoneId.systemDefault());
Explication
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!