Hora y fecha comunes del núcleo de Java

Clase de procesamiento de fecha Java detallada Fecha

Los fundamentos del tiempo

  • Zona horaria: toda la tierra está dividida en veinticuatro zonas horarias, y cada zona horaria tiene su propia hora local.

En aras de la uniformidad, se utiliza una hora unificada, denominada Hora Universal Coordinada (UTC).
TC es casi lo mismo que la hora media de Greenwich (GMT, hora media de Greenwich, también traducida como: hora media de Greenwich).
CST (hora de Pekín), hora de Pekín,
hora estándar de China, hora estándar de China. En términos de división de zona horaria, pertenece al distrito East Eight, que es 8 horas antes que la hora universal coordinada y se registra como UTC + 8.
Marca de tiempo: el número total de segundos desde el 1 de enero de 1970 (08: 00: 00GMT) hasta la hora actual. También se denomina marca de tiempo de Unix. Se utiliza ampliamente en la protección de la propiedad intelectual, la firma de contratos y los aspectos financieros de contabilidad, electrónica oferta pública, negociación de acciones y otros
formatos variedad: 2050-10-3110: 11: 11,2050 / 10/3110 / 10:10 año, mes, fecha, día de la semana, etc.

antecedentes:

  • ¿Cómo expresar la hora en el código del programa? ¿Qué necesito para obtener la hora actual? El paquete ava.util proporciona la clase Date para encapsular el constructor de fecha y hora actual
  • El paquete ava.util proporciona la clase Date para encapsular la fecha y hora actuales
  • Constructor
//当前时间
Date()
//从1970年1月1日起的毫秒数作为参数
Date(long millisec)

Método común

//返回自1970年1月1日00:00:00GMT以来此Date对象表示的毫秒数。
long getTime()
//调用此方法的Date对象在指定日期之后返回true,否则返回false。
boolean after(Date date)
//调用此方法的Date对象在指定日期之前返回true,否则返回false。
boolean before(Date date)

La nueva versión de la clase de procesamiento de fecha y hora JDK8

  • Java8 fortalece aún más el procesamiento de la fecha y la hora al lanzar la nueva API de fecha y hora (JSR310)
  • Se han agregado muchas API comunes, como comparación de fecha / hora, suma y resta, formateo, etc. La ubicación del paquete es java.time
  • Clase básica
LocalDate:不包含具体时间的日期。
LocalTime:不含日期的时间。
LocalDateTime:包含了日期及时间。

  • API común de LocalDate
 LocalDate today=LocalDate.now();
 system.out.print1n("今天日期:"+today);
 
//获取年,月,日,周几
system.out.print1n("现在是哪年:"+today.getYear());
system.out.print1n("现在是哪月:"+today.getMonth());
System.out.print1n("现在是哪月(数字):"+today.getMonthValue());
System.out.print1n("现在是几号:"+today.getDayofMonth());
system.out.print1n("现在是周几:"+today.getDayofweek());
//加减年份,加后返回的对象才是修改后的,旧的依旧是旧的LocalDate changeDate=today.plusYears(1);
system.out.print1n("加后是哪年:"+changeDate.getYear());
System.out.print1n("旧的是哪年:"+today.getYear());
//日期比较
system.out.print1n("isafter:"+changeDate.isAfter(today));
//getYear()int 获取当前日期的年份
//getMonth()Month获取当前日期的月份对象
//getMonthValue()int 获取当前日期是第几月
//getDayofweek()Dayofweek 表示该对象表示的日期是星期几
//getDayofMonth()int 表示该对象表示的日期是这个月第几天
//getDayofyear()int 表示该对象表示的日期是今年第几天
//withyear(int year)LocalDate 修改当前对象的年份
//withMonth(int month)LocalDate修改当前对象的月份
//withpayofMonth(int dayofMonth)LocalDate 修改当前对象在当月的日期
//plusYears(long yearsToAdd)Localpate 当前对象增加指定的年份数
//plusMonths(1ong monthsToAdd)LocalDate 当前对象增加指定的月份数
//plusweeks(1ong weeksToAdd)LocalDate 当前对象增加指定的周数
//plusDays(1ong daysToAdd)LocalDate 当前对象增加指定的天数
//minusYears(long yearsTosubtract)LocalDate 当前对象减去指定的年数
//minusMonths(1ong months ToSubtract)LocalDate当前对象减去注定的月数
//minusWeeks(long weeksTosubtract)LocalDate 当前对象减去指定的周数
//minusDays(1ong daysTosubtract)LocalDate当前对象减去指定的天数
//compareTo(ChronoLocalDate other)int 比较当前对象和other对象在时间上的大小,返回值如果为正,则当前对象时间较晚
//isBefore(ChronoLocalDate other)boolean比较当前对象日期是否在other对象日期之前
//isAfter(ChronoLocalDate other)boolean 比较当前对象日期是否在other对象日期之后
//isEqual(ChronoLocalDate other)boolean 比较两个日期对象是否相等

Formateo de fecha y hora de la nueva versión de JDK8

  • Por qué formatear la fecha y la hora

Impresión de programas o formato de fecha y hora de visualización de la página web, los usuarios tienen diferentes necesidades, debe formatear de acuerdo con ciertas reglas

  • Marcadores de posición de uso común

y año de cuatro dígitos
M mes d día
h hora en
m minutos
S milisegundos

  • Después de JDK8: fecha y hora de introducción de la seguridad para subprocesos
LocalDateTime ldt = LocalDateTime.now();
System.out.println(ldt);
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd
HH:mm:ss");
String ldtStr = dtf.format(ldt);
System.out.println(ldtStr);

  • Obtener el objeto de fecha y hora especificado LocalDate Time
    ldt = LocalDate Time.of (2020,11,11,8,20,30); System.out.println (ldt);
  • Calcule la diferencia de fecha y hora java.time.Duration
LocalDateTime today = LocalDateTime.now();
System.out.println(today);
LocalDateTime changeDate = LocalDateTime.of(2020,10,1,10,40,30);
System.out.println(changeDate);
Duration duration = Duration.between( today,changeDate);//第⼆二个参数减第⼀一
个参数
System.out.println(duration.toDays());//两个时间差的天数
System.out.println(duration.toHours());//两个时间差的小时数
System.out.println(duration.toMinutes());//两个时间差的分钟数
System.out.println(duration.toMillis());//两个时间差的毫秒数
System.out.println(duration.toNanos());//两个时间差的纳秒数

Supongo que te gusta

Origin blog.csdn.net/qq_43266564/article/details/114988977
Recomendado
Clasificación