Explicación detallada básica de Java "origen de la hora, fecha, formato de fecha, calendario de giro" + ejemplo de código

fecha

Si desea adquirir conocimientos relacionados con las fechas, primero debe conocer la clase Fecha. Para usar la clase Fecha, debe importar, a saber: import java.util.Date;

Origen del tiempo

Todos los tipos de datos, ya sean enteros, booleanos, números de punto flotante o cadenas, deben expresarse en forma de números.

El tipo de fecha no es una excepción, es decir, una fecha, como el 1 de octubre de 2020, será reemplazada por un número en la computadora.

Entonces, el número más especial es cero. El número cero representa el origen del tiempo en Java, y la fecha correspondiente es el 1 de enero de 1970, 8: 0: 0. (¿Por qué son las 8 en punto, porque la zona horaria del Pacífico de China es UTC-8, que dista exactamente 8 horas de la hora media de Greenwich)?

¿Por qué corresponde a 1970? Debido a que la primera versión de UNIX se lanzó en 1969: AT&T, considerando todos los aspectos, se tomó 1970 como el origen del tiempo en ese momento.

Todas las fechas se basan en estas 0 en punto, y cada milisegundo pasa, +1.

Crear objeto de fecha

Date d=new Date();

consigue tiempo

getTime () Obtiene un entero largo.
Este entero representa un aumento de 1 por cada milisegundo desde 1970.1.1 08: 00: 00: 000.

import java.util.Date;

public class TestDate {
  
    public static void main(String[] args) {
        //注意:是java.util.Date;
        //而非 java.sql.Date,此类是给数据库访问的时候使用的
        Date now= new Date();
        //打印当前时间
        System.out.println("当前时间:"+now.toString());
        //getTime() 得到一个long型的整数
        //这个整数代表 1970.1.1 08:00:00:000,每经历一毫秒,增加1
        System.out.println("当前时间getTime()返回的值是:"+now.getTime());
          
        Date zero = new Date(0);
        System.out.println("用0作为构造方法,得到的日期是:"+zero);
          
    }
}

resultado de la operación:

System.CurrentTimeMillis ();

El número de milisegundos de la fecha actual
new Date (). GetTime () y System.currentTimeMillis () son iguales.
Sin embargo, debido al rendimiento de la máquina, puede haber una diferencia de decenas de milisegundos. Después de todo, cada línea de código la ejecución lleva tiempo

Ejemplos de ejercicios

Con la ayuda de números aleatorios , cree una fecha aleatoria entre el último día de 1999 y la fecha aleatoria entre el primer día de 2021

import java.text.ParseException;//解析异常类
import java.text.SimpleDateFormat;//日期格式化类
import java.util.Date;

public class SimleDateFormat {
	public static void main(String[] args) {
		SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		String str2="2021-01-01 00:00:00";
		String str1="1999-12-31 23:59:59";
		try {
	    Date d1=sdf.parse(str1);
	    System.out.println("1999年的最后一天:"+d1);
	    Date d2=sdf.parse(str2);
	    System.out.println("2021年的第一天:"+d2);
	    long timeMinus=d2.getTime()-d1.getTime();
	    long timeSum=(long)(Math.random()*(timeMinus+d1.getTime()));
	    Date d3=new Date(timeSum);
	    System.out.println("1999-2021间的随机日期:"+d3);
	}catch(ParseException e) {
		e.printStackTrace();
	}
		
	}
}

resultado de la operación:

 

 

Supongo que te gusta

Origin blog.csdn.net/qq_44624536/article/details/113604304
Recomendado
Clasificación