Instantáneo 、 LocalTime 、 LocalDate 、 LocalDateTime 介绍


Prefacio

Clase de tiempo recién agregada en java1.8


1. Instantáneo (representa una marca de tiempo)

Puede caer con precisión nanosegundos. Cuando se usan nanosegundos para representar un tiempo, no es suficiente usar un tipo Long. Necesita un poco más de espacio. Su interno está compuesto por dos campos Long. La primera parte representa el tiempo desde el 1 de enero de 1970. El número actual de segundos, la segunda parte representa el número de nanosegundos
Instant instant = Instant.now();//获取当前时间
System.out.println(instant);

1.1 Otros métodos de Instant

//计算5天前的时间
  Instant instant1 =  instant.minus(5, ChronoUnit.DAYS);
  System.out.println(instant1);

  //计算5天前的第二种方法
   Instant instant2 =  instant.minus(5, ChronoUnit.DAYS);
   System.out.println(instant2);

1.1.1 Método de comparación

Proporciona dos métodos para comparar isAfter () e isBefore ()

1.1.2 Obtener el número de segundos

//得到秒数
        Instant now = Instant.now();
        System.out.println(now.getEpochSecond());//秒
        System.out.println(now.toEpochMilli());//毫秒

1.2 Conversión

Debido a que Instant es una marca de tiempo, puede agregar una zona horaria para crear ZonedDateTime y luego puede obtener el LocalDateTime de la zona horaria correspondiente.
El siguiente es el diagrama de conversión
Inserte la descripción de la imagen aquí

Dos, LocalTime (hora sin zona horaria)

1. Método básico

  //获取当前时间包含毫秒数---打印出->15:46:22.300
      LocalTime localTime = LocalTime.now();

     //构建时间---打印出->12:20:13
      LocalTime localTime1 = LocalTime.of(12,20,13);

      //获取当前时间不包含毫秒数---打印出来->15:49:37
      LocalTime localTime2 = localTime.withNano(0);

      //字符串可以转为时间---打印出来->12:15:12
      LocalTime localTime3 = LocalTime.parse("12:15:12");

    //判断localTime是否比localTime2晚
      System.out.println(localTime.isAfter(localTime2));
        
     //修改毫秒值
      System.out.println(localTime.withNano(22345));

Tres, LocalDate (fecha sin zona horaria)

## 3.1 Métodos comunes
 LocalDate localDate = LocalDate.now();
        //获得2020年的第23天
        localDate = LocalDate.ofYearDay(2020,23);
        
        //2013年8月10日
        localDate = LocalDate.of(2013, Month.AUGUST,10);

Cuatro, LocalDateTime

Es una combinación de LocalDate y LocalTime, que representa la fecha y la hora sin zona horaria.

para resumir

Por ejemplo: Lo anterior es de lo que hablaré hoy Este artículo solo presenta brevemente el uso de clases de tiempo de Java.

Supongo que te gusta

Origin blog.csdn.net/qq_44688861/article/details/113863093
Recomendado
Clasificación