Date类:
概述:
类 Date 表示特定的瞬间,精确到毫秒;
时间的原点:公元1970年 一月一日,午夜0:00:00 对应的毫秒值就是0;
System.currentTimeMillis() 返回值long类型参数,用于获取当前日期的毫秒值。
//获取当前时间毫秒值
long time=System.currentTimeMillis();
两种获取当前日期对象:
//创建当前系统日期时间对象
Date date=new Date();
System.out.println(date);
//创建指定日期时间对象
Date date2=new Date(1001000000000L);
System.out.println(date2);
//2.获取当前时间毫秒值
System.out.println(date.getTime());
DateFormat类:日期转换类
概述:
DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。日期/时间格式化子类(如 SimpleDateFormat类)允许进行格式化(也就是日期 -> 文本)、解析(文本-> 日期)和标准化。
//创建日期格式转换类对象(规定对象) SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
字符串的格式也必须按照这个格式写
DateFormat 类方法
//将日期对象按照指定格式转为字符串 日期对象->字符串
String d=sdf.format(date);
System.out.println(d);
String d1="1998年8月8日 10:10:10";
//将字符串按照指定格式转为日期对象 字符串->日期对象
Date date1=sdf.parse(d1);
System.out.println(date1);
Calendar类:日历类
概念:
Calendar是日历类,在Date后出现,替换掉了许多Date的方法。该类将所有可能用到的时间信息封装为静态成员变量,方便获取。
Calendar类在创建对象时并非直接创建,而是通过静态方法创建
方法:
//获取日历类对象 Calendar c=Calendar.getInstance(); System.out.println(c); //后天 c.add(Calendar.DATE, -2); System.out.println(c); //获取指定日历成员变量字段 //获取年 int year=c.get(Calendar.YEAR); //获取月 int month=c.get(Calendar.MONTH)+1; //获取日 int day=c.get(Calendar.DATE); //获取星期 int week=c.get(Calendar.DAY_OF_WEEK); System.out.println(year+"年"+month+"月"+day+"日,星期"+week); //将日类类对象转为日期类对象 日历类对象->日期类对象 Date d=c.getTime(); System.out.println(d); //给日历类对象设定指定的值 08年奥运会 月份减一 c.set(2008,7,8); System.out.println(c.getTime());
注意事项:
西方星期的开始为周日,中国为周一。
在Calendar类中,月份的表示是以0-11代表1-12月。