java.util包概述

java.util包中放置了Java开发过程中常用的工具类,如日期时间类,日历类等等。

java.util包常用类

  1. Date;
  2. Calendar及其子类;
  3. 集合接口以及实现类;
  4. 集合工具类;
  5. 数组工具类等等。

java.util.Date类

Date概述

Date类表示特定的时间,可以精确到毫秒。

Date类的构造方法

Date() 无参构造方法;

Date(long time) 有长整形参数的构造方法;

其他构造方法已经废弃不用。

Date类常用方法

long getTime();返回从1970 年 1 月 1 日 00:00:00 GMT 到现在的毫秒数;

String toString();将Date对象转换为字符串,默认的转换格式为:dow mon dd hh:mm:ss zzz yyyy。

示例
 1. 在用Date类时必须导入该类 import java.util.Date;
 2. 1553899026141L是利用getTime()获取的毫秒数,该输出的时间会与上一次利用new Date()获取的当前时间是一样的。(dt2)

  1. Date dt = new Date();//指定系统当前时间
  2. System.out.println(dt);
  3. System.out.println(dt.toString());
  4. System.out.println(new Date());
  5. 无参构造方法会输出当前时间,上面代码3个输出函数的效果都一样,new Date()就是创建一个对象,dt对象用于输出时默认调用toString方法。
  6. Date dt1 = new Date(5956899298945L);
  7. System.out.println(dt1);
  8. 有参构造方法,输入的是从1970 1 1 00:00:00 GMT 到现在的毫秒数。
  9. Date dt2 = new Date();
  10. System.out.println(dt2);
  11. System.out.println(dt2.getTime());
  12. getTime();返回从1970 1 1 00:00:00 GMT 到现在的毫秒数。
  13. System.out.println(new Date(1553899026141L));

  所有通过类创建的对象,如果在System.out.println()中直接填入对象,只有系统默认调用该对象类中的某个方法才可以。

Calendar类

Calendar类概述

java.util.Date类中获取当前年、月、日和将时间格式化以及将字符串类型的日期转换为Date对象的方法都已经被废弃。

如果想要获取Date对象的年、月、日、星期等操作,需要使用Calendar类以及其子类完成。

Calendar是一个抽象类,它为获取和修改年、月、日、星期等日历字段提供了一系列的方法。

Calendar常用方法

Calendar getInstance()
 1. 返回一个Calendar对象

void set(int field,int x);
 1. 设置日历字段的值

void get(int field);
 1. 获取某个日历字段的值

java.util.Date getTime();
 1. 返回代表该日历对象的Date值

void setTime(java.util.Date date);
 1. 使用指定的Date设置该日历对象

常用的日历字段

AM_PM 上午或者下午。

  YEAR 年 MONTH 月 DATE 日 HOUR 12小时制 HOUR_OF_DAY 24小时制 MINUTE 分钟 SECOND 秒 MILLISECOND 毫秒。

GregorianCalendar子类

  GregorianCalendar是Calendar的一个直接子类,提供了世界上大多数国家/地区使用的标准日历系统,即中国所谓的阳历或者公历。

GregorianCalendar子类独有的常用方法

boolean isLeapYear(int year) 判断指定年份是不是闰年

void add(int field ,int x)为指定的日历字段增加值

程序示例

设置日历时间并打印当前时间

1610803472976.png

设置日历的年份

1610803473015.png

设置到当前月的多少号

1610803473048.png

获取今天是当前周的第几天

1610803473084.png

将日历的月份加上4个月

1610803473112.png

判断指定的年份是不是闰年

1610803473150.png

Calendar.DAY_OF_MONTH是Calendar类中的一个属性,是个整型值。

注意:上面程序是一个完整的程序,只是为了方便观察,分成了几部分。