一、日期类
Date()类概述:
Date代表了一个特定的时间类,精确到毫秒值
1.1 构造方法:
我们通过一个例子来看:
public class DateDemo01 {
public static void main(String[] args) {
//Date() 以当前系统时间创建对象
Date date = new Date();
System.out.println("Date():");
System.out.println(date);
System.out.println();
//Date(long l) 初始化为表示标准基准时间起指定的毫秒数
long time = 1000*60*60;//一小时
Date date1 = new Date(time);
System.out.println("Date(long l):");
System.out.println(date1);
}
}
打印输出结果是:
这里有一点需要注意,在使用有参构造方法时,打印输出是从1970年0时0分开始计时的,而且国内是东八区,所以要加8个小时,因此是九点。
1.2 常用方法
依旧通过一个例子:
public class DateDemo01 {
public static void main(String[] args) {
//创建日期对象
Date date = new Date();
//getTime() 获取时间毫秒值(1970年1月1日 00:00:00开始到现在的毫秒值)
System.out.println("使用getTime():");
System.out.println(date.getTime()+"毫秒");
System.out.println(date.getTime()*1.0/1000/60/60/24/365+"年");//进行换算
System.out.println();
//setTime(long l) 根据传入的毫秒值设置时间
long time = 1000*60*60;
date.setTime(time);
System.out.println("使用setTime():");
System.out.println(date);
}
}
控制台输出结果;
二、SimpleDateFormat类
用处:用于日期格式化和解析
2.1 构造方法
2.2 SimpleDateFormat 格式化和解析日期
2.2.1格式化(Date 到 String)
String format(Date d) 将日期对象格式化成字符串
2.2.2解析(从String 到 Date)
Date parse(String s) 将字符串日期解析成Date对象
常用的日期模板格式:
"yyyy年MM月dd日 HH:mm:ss"
举例:
public class DateDemo01 {
public static void main(String[] args) throws ParseException {
//String format(Date d) 将日期对象格式化成字符串
Date date = new Date();
//使用无参构造方法
System.out.println("将日期对象格式化成字符串:");
SimpleDateFormat sdf = new SimpleDateFormat();
String s = sdf.format(date);
System.out.println(s);
//使用有参构造方法
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
String s1 = sdf2.format(date);
System.out.println(s1);
System.out.println();
//Date parse(String s) 将字符串日期解析成Date对象
System.out.println("将字符串日期解析成Date对象:");
SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String ss = "2021-11-1 10:57:21";
Date date1 = sdf3.parse(ss);
System.out.println(date1);
}
}
注: 在将字符串日期解析成Date对象时,给定的字符串和给定的日期模式要匹配,不然就会报出解析异常的错误!
控制台打印输出:
日期API的用法就讲到这里!