Date类
- java.util.Date类表示特定的日期和时间,精确到毫秒
【构造方法】
Date date = new Date(); //返回当前时间,默认的输出格式为Tue Aug 13 21:33:30 CST 2019
三种时间标准
CST---Central Standard Time
GMT---Greenwich Mean Time
UTC---Coordinated Universal Time
【常用方法】
getTime()方法 //返回从1970年1月1日 00:00:00 GMT到此Date之间的毫秒数
before(Date date) //判断是否在指定日期之前,即是否小于指定日期
after(Date date) //判断是否在指定日期之后,即是否大于指定日期
Date类中的大部分方法已过时, 如果需要获取和设置日期和时间,推荐使用Calendar类
-
Date类有三个子类,都位于java.sql包中
java.sql.Date //日期,YYYY-MM-DD
java.sql.Time //时间,HH:mm:ss
java.sql.Timestamp //时间戳,YYYY-MM-DD HH:mm:ss.SSS,精确到毫秒
Calendar类
- 日期时间操作的抽象类
-
java.util.Calendar类是表示日期时间的抽象类,精确到毫秒,通过工厂方法创建
Calendar c = Calendar.getInstance();
-
该抽象类的具体子类为GregorianCalendar,提供了世界上大多数国家使用的标准日历
-
该类提供的常量和方法—参见API文档
void set(int year, int month, int date) //设置日期
void set(int year, int month, int date, int hourOfDay, int minute, int second) //设置日期时间int get(Calendar.YEAR); //返回年份
int get(Calendar.MONTH); //返回月份,需要加1
int get(Calendar.DAY_OF_YEAR); //返回是本年的第几天
int get(Calendar.DAY_OF_MONTH); //返回是本月的第几天
int get(Calendar.DAY_OF_WEEK); //返回是本周的第几天 周日(1) 周一(2) 周六(7)
int get(Calendar.HOUR); //返回小时数
int get(Calendar.MINUTE); //返回分钟数
int get(Calendar.SECOND); //返回秒数void add(int field, int amount); //给指定字段添加或减去amount个时间单位
【Calendar类和Date类之间的转换】
Calendar --> Date Date getTime()
Date --> Calendar void setTime(Date date)
DateFormat类
- 日期格式的抽象类
-
ava.text.DateFormat类是表示日期时间格式的抽象类,提供基于默认或给定语言环境和多种格式化风格的时间日期
DateFormat df = new SimpleDateFormat(String pattern); //yyyy年MM月dd日 HH时mm分ss秒
-
DateFormat抽象类最常见的具体子类为SimpleDateFormat
日期和时间模式:y(年) M(月) d(日) H(时) M(分) d(秒) S(毫秒)
【Date类和String类之间的转换】
Date parse(String source) // String --> Date
String format(Date date) // Date --> String