1.Date类

  • Date类在java.util包下,表示特定的瞬间,精确到毫秒,毫秒是千分之一秒。
  • 毫秒的好处是可以对时间和日期进行计算,计算两个日期之间有多少天,可以先把日期转换为毫秒,计算两个毫秒值之间的差值,转换为天数。
  • 时间原点(0毫秒):1970年1月1日 00:00:00(英国格林威治的标准时间),中国属于东八区,会把时间增加8个小时。
  • System.currentTimeMillis():获取当前系统时间到时间原点之间一共经历的毫秒值。
  • 常用方法:long getTime():返回自时间原点以来,到当前系统时间的毫秒数,把日期转换为毫秒值。

2.DateFormat类

  • DateFormat类是对日期进行格式化/对日期进行解析的抽象类,在java.text包下。
  • 对日期进行格式化:日期->文本,对日期进行解析:文本->日期
  • 常用方法:
  1. String format(Date):按照指定的模式,把Date日期格式化为符合模式的字符串;
  2. Date parse(String):把符合模式的字符串解析为Date日期。parse方法会抛出一个异常ParseException,如果字符串和构造方法的模式不一样,程序就会抛出此异常。调用了一个抛出异常的方法,就必须处理处理这个异常,要么throws继续抛出该异常,要么try catch自己处理该异常。
  • DateFormat类是一个抽象类,无法直接创建对象使用,可以使用它的子类SimpleDateFormat类。
  • SimpleDateFormat类在java.text包下,主要关注年(y)月(M)日(d)时(H)分(m)秒(s),例如:yyyy-MM-dd HH:mm:ss,注意:模式中的字母不能改变,但连接模式的符号可以改变,例如:yyyy年MM月dd日 HH时mm分ss秒。所有的模式如下:

java 当前秒数 两位 java毫秒数 多少位_字符串

3.Calendar类

  • 常用方法:
  1. public int get(int field):返回给定日历字段的值;
  2. public void set(int field, int value):将给定的日历字段设置为给定的值,有重载方法set(int yearValue, int monthValue, int dayValue);
  3. public void abstract add(int field, int amout):根据日历的规则,为给定的日历字段添加或减去给定的时间量;
  4. public Date getTime():返回一个表示此Calendar时间值的Date对象,把日历转换为日期。
  • 注意:
  1. field表示日历字段,可以用Calendar类的静态成员变量获取;
  2. 西方的月份是0-11,东方的月份是1-12;
  3. Calendar对象用getInstance()获取。