JDK7
Date
Date date=new Date(); System.out.println(date.getTime()); //获取1970-1-1 08:00:00到现在的毫秒值 Date date1=new Date(0); System.out.println(date1); //Thu Jan 01 08:00:00 CST 1970 date1.setTime(1679578872543l); System.out.println(date1); //Thu Mar 23 21:41:12 CST 2023
SimpleDateFormar
格式化:把时间变成我们喜欢的格式。
解析:把字符串表示的时间变成Date对象
方法
Date d1=new Date(0); SimpleDateFormat sdf=new SimpleDateFormat(); System.out.println(sdf.format(d1)); //默认格式1970/1/1 上午8:00 SimpleDateFormat sdf1=new SimpleDateFormat("yyyy-MM-dd HH:ss:mm"); System.out.println(sdf1.format(d1)); //1970-01-01 08:00:00 String dateStr="2023-02-14 20:00:00"; Date date = sdf1.parse(dateStr); //把字符串变成时间对象 System.out.println(date); //Tue Feb 14 20:00:00 CST 2023
Calendar
Calendar代表了系统当前时间的日历对象,可以单独修改、获取时间中的年,月,日
细节:Calendar是一个抽象类,不能直接创建对象
常用方法
注意:
日历类中月份的范围:0-11
日历类中星期的特点:范围1-7,1表示星期日 是一周中的第一天
//根据系统的不同时区来获取不同的日历对象,默认获取当前时间 //会把时间中的纪元,年,月,日,时,分,秒,星期等等放到一个数组中 //细节: //月份:范围是0-11 如果获取出来的是0,那么实际上是1月 //星期:范围1-7 1表示的是星期日 7表示星期六 Calendar cl = Calendar.getInstance(); Date d=new Date(0); //把日期设置为1970-1-1 08:00:00 cl.setTime(d); System.out.println(cl); //获取日期中的某个字段信息 int year = cl.get(Calendar.YEAR); System.out.println(year); //1970 int month = cl.get(Calendar.MONTH); System.out.println(month); //0 实际表示1月 int day = cl.get(Calendar.DAY_OF_YEAR); System.out.println(day); //1 //修改日历中的某个字段信息 cl.set(Calendar.YEAR,2000); System.out.println(cl.get(Calendar.YEAR)); //2000 //为某个字段增加/减少指定的值 cl.add(Calendar.MONTH,2); //为月份增加两个月 System.out.println(cl.get(Calendar.MONTH)); //2 实际表示3月