Clase java.time.LocalDateTime en Java

La clase java.time.LocalDateTime , introducida en Java 8, representa un objeto de fecha y hora local sin información de zona horaria. La clase LocalDateTime en Java es un objeto de fecha y hora inmutable que representa una fecha en el formato aaaa-MM-dd-HH-mm-ss.zzz . Implementa la interfaz ChronoLocalDateTime y hereda la clase de objeto.

Siempre que necesitemos representar el tiempo sin una referencia de zona horaria, podemos usar las instancias de LocalDateTime. LocalDateTime, por ejemplo, se puede utilizar para iniciar trabajos por lotes en cualquier aplicación. Los trabajos se ejecutarán a una hora fija en la zona horaria en la que se encuentra el servidor. Tenga en cuenta que las instancias de LocalDateTime son inmutables y subprocesos. 

Sintaxis: declaración de clase

clase final pública LocalDateTime 

extiende objeto 

implementa Temporal, TemporalAdjuster, ChronoLocalDateTime<LocalDate>, Serializable

Los métodos de esta clase son los siguientes:

Método Descripción
formato()  Se utiliza para formatear esta fecha y hora utilizando el formateador especificado.
obtener()  Se utiliza para obtener el valor del campo especificado a partir de esta fecha y hora como un int.
menosMinutos() Devuelve una copia de este LocalDateTime con el número especificado de minutos restados.
menosaños() Devuelve una copia de este LocalDateTime con el número especificado de años restados.
menosDías() Devuelve una copia de este LocalDateTime con el número especificado de días restados.
ahora() Se utiliza para obtener la fecha y hora actual del reloj del sistema en la zona horaria predeterminada.
másHoras() Devuelve una copia de este LocalDateTime con el número especificado de horas añadidas.
másAños() Devuelve una copia de este LocalDateTime con el número especificado de años agregados.
másDías() Devuelve una copia de este LocalDateTime con el número especificado de días agregados.

Algunos métodos más para modificar la hora local son los siguientes  : LocalDateTime se puede usar para obtener una nueva instancia de fecha y hora local en relación con una instancia de fecha y hora local existente. Son, concretamente, los siguientes:

másaños(), másmeses(), másdías(), máshoras(), másminutos(), mássegundos(), másnanos(), menosaños(), menosmeses(), menosdías(), menoshoras(), menosminutos(), menossegundos( ), menos Nanos()

Ejemplos 1:

Java

// Java Program to illustrate LocalDateTime Class of java.time package 
 
// Importing LocalDateTime class from java.time package
import java.time.LocalDateTime;
 
// Main class for LocalDateTime
public class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
        // Creating an object of LocalDateTime class
        // in the main() method
        LocalDateTime now = LocalDateTime.now();
 
        // Print statement
        System.out.println(now);
 
        // Adding 1 year, 1 month, 1 week and 1 day
        LocalDateTime localDateTime1 = now.plusYears(1)
                                           .plusMonths(1)
                                           .plusWeeks(1)
                                           .plusDays(1);
        // Print statement
        System.out.println(localDateTime1);
 
        // Subtracting 1 year, 1 month, 1 week and 1 day
        LocalDateTime localDateTime2
            = localDateTime1.minusYears(1)
                  .minusMonths(1)
                  .minusWeeks(1)
                  .minusDays(1);
        // Print statement
        System.out.println(localDateTime2);
 
        // Adding 1 hour, 1 minute, 1 second and 100
        // nanoseconds
        LocalDateTime localDateTime3
            = localDateTime2.plusHours(1)
                  .plusMinutes(1)
                  .plusSeconds(1)
                  .plusNanos(100);
        // Print statement
        System.out.println(localDateTime3);
 
        // Subtracting 1 hour, 1 minute, 1 second and 100
        // nanoseconds
        LocalDateTime localDateTime4
            = localDateTime3.minusHours(1)
                  .minusMinutes(1)
                  .minusSeconds(1)
                  .minusNanos(100);
        // Print statement
        System.out.println(localDateTime4);
    }
}

Producción:

Ejemplo 2: Crear un tiempo específico

Java

// Java Program to illustrate LocalDateTime Class
// of java.time package by creating specific time
 
// Importing required classes from resp packages
import java.time.*;
import java.time.format.*;
 
// main class
class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
 
        // Milliseconds
        LocalDateTime localDateTime1 = LocalDateTime.of(
            2021, 04, 24, 14, 33, 48, 123456789);
        // Print statement
        System.out.println(localDateTime1);
 
        // Month
        LocalDateTime localDateTime2 = LocalDateTime.of(
            2021, Month.APRIL, 24, 14, 33, 48, 123456789);
        // Print statement
        System.out.println(localDateTime2);
 
        // Seconds
        LocalDateTime localDateTime3 = LocalDateTime.of(
            2021, Month.APRIL, 24, 14, 33, 48);
        // Print statement
        System.out.println(localDateTime3);
 
        // Minutes
        LocalDateTime localDateTime4 = LocalDateTime.of(
            2021, Month.APRIL, 24, 14, 33);
        // Print statement
        System.out.println(localDateTime4);
 
        // Local date + Local time
        LocalDate date = LocalDate.of(2021, 04, 24);
        LocalTime time = LocalTime.of(10, 34);
 
        LocalDateTime localDateTime5
            = LocalDateTime.of(date, time);
        // Print statement
        System.out.println(localDateTime5);
    }
}

Producción:

Ejemplo 3 : Formatear LocalDateTime a string

Para formatear una hora local con la representación de string deseada, use el método LocalDateTime.format(DateTimeFormatter).

Java

// Java Program to illustrate LocalDateTime Class by
// Formatting LocalDateTime to string
 
// Importing all classes from java.time package
import java.time.LocalDateTime;
import java.time.format.*;
import java.util.*;
 
// Main class
class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
 
        // Creating an object of DateTimeFormatter class
        DateTimeFormatter formatter
            = DateTimeFormatter.ofPattern(
                "yyyy-MM-dd HH:mm:ss a");
 
        // Creating an object of LocalDateTime class
        // and getting local date and time using now()
        // method
        LocalDateTime now = LocalDateTime.now();
 
        // Formatting LocalDateTime to string
        String dateTimeString = now.format(formatter);
 
        // Print and Display
        System.out.println(dateTimeString);
    }
}

Producción:

Nota: para analizar una string en LocalDateTime, convertir la hora de una string en una instancia de hora local, la clase LocalDateTime tiene dos métodos parse() sobrecargados.

  • analizar (texto CharSequence)
  • analizar (texto CharSequence, formateador DateTimeFormatter)

Publicación traducida automáticamente

Artículo escrito por sanketnagare y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *