Date类
1、创建方法
Date date=new Date(); //方式一:默认创建 获取当前系统时间 格式:Tue May 11 14:24:55 CST 2021
Instant instant = Instant.now();
Date date2=Date.from(instant); //方式二:基于Instant创建 Tue May 11 15:08:48 CST 2021
Date date3=sdf.parse("2005-5-1 5:5:5");
System.out.println(date3); //方式三:通过SimpleDateFormat解析字符串 Sun May 01 05:05:05 CST 2005
2、getTime()
long timeMillis=date.getTime(); //获得当前时间至1970年1月1日08:00:00 之间的毫秒数
3、SimpleDateFormat
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //指定解析格式 年-月-日 时:分:秒 把一个date转换为自定义的时间格式
String nowString=sdf.format(date);
System.out.println(nowString); //2021-05-11 14:44:45
4、setTime()
date.setTime(3600*1000); //设置距1970年1月1日08:00:00多少毫秒后地时间 3600*1000为一个小时
String now=sdf.format(date);
System.out.println(now); //1970-01-01 09:00:00
5、compareTo()
Date date=new Date();
date.setTime(3600*1000); //1970-01-01 09:00:00
Date date1=new Date(); //2021-05-11 14:44:45
int flag=date.compareTo(date1); //比较date与date1的时间大小,若date比date1小,返回-1 先等返回0 大于返回1
Calendar类
1、初始化
Calendar calendar=Calendar.getInstance(); //方式一
Calendar.Builder builder =new Calendar.Builder(); //方式二
Calendar calendar1 = builder.build();
2、getTimeInMillis()
long timeMillis2=calendar.getTimeInMillis(); //获得当前时间至1970年1月1日08:00:00 之间的毫秒数
3、getTime()
Date date4=calendar.getTime(); //Tue May 11 15:22:46 CST 2021
4、setTime()
//使用给定的 Date设置此日历的时间
Date date=new Date(); //Wed May 12 09:17:59 CST 2021
calendar.setTime(date5);
5、set()、get()
calendar.set(2020,5,21,1,1,1); //设置指定时间
int year1=calendar.getWeekYear(); //年 2020
int year2=calendar.get(Calendar.YEAR); //年 2020
int month=calendar.get(Calendar.MONTH); //月 5
int day =calendar.get(Calendar.DAY_OF_MONTH);//日 21
int hour =calendar.get(Calendar.HOUR_OF_DAY);//时 1
int minute =calendar.get(Calendar.MINUTE); //分 1
int seconds =calendar.get(Calendar.SECOND); //秒 1
6、clear()
Date date5=new Date(); //Wed May 12 09:22:58 CST 2021
calendar.setTime(date5);
calendar.clear(); //Thu Jan 01 00:00:00 CST 1970
calendar.clear(Calendar.YEAR); //Tue May 12 09:22:58 CST 1970
clear可以带参数,也不可以不带。如果不带参数,则会把整个时间都重置Thu Jan 01 00:00:00 CST 1970;如果带具体参数,如Calendar.YEAR,则会把时间中的年重置为1970