java常用时间类
1.date类 功能很多被Calendar类取代,不讨论
2.Calendar类
该类被abstract所修饰,说明不能通过new的方式来获得实例,对此,Calendar提供了一个类方法getInstance,以获得此类型的一个通用的对象,getInstance方法返回一个Calendar对象(该对象为Calendar的子类对象),其日历字段已由当前日期和时间初始化
// 获取年
int year = calendar.get(Calendar.YEAR);
// 获取月,这里需要需要月份的范围为0~11,因此获取月份的时候需要+1才是当前月份值
int month = calendar.get(Calendar.MONTH) +
// 获取日
int day = calendar.get(Calendar.DAY_OF_MONTH);
// 获取时
int hour = calendar.get(Calendar.HOUR);
// int hour = calendar.get(Calendar.HOUR_OF_DAY); // 24小时表示
// 获取分
int minute = calendar.get(Calendar.MINUTE);
// 获取秒
int second = calendar.get(Calendar.SECOND);
// 星期,英语国家星期从星期日开始计算
int weekday = calendar.get(Calendar.DAY_OF_WEEK);
3. SimpleDateFormat类
下图为完整的日期转换模板,可根据模板中特定字符标注日期。
序号 | 标记 | 描述 |
1 | yyyy | 年 |
2 | MM | 月 |
3 | dd | 日 |
4 | HH | 小时 |
5 | mm | 分钟 |
6 | ss | 秒 |
7 | SS | 毫秒 |
常用的方法如下
1 | public SimpleDateFormat(String pattern) | 通过一个指定的模板构造对象 |
2 | public Date parse(String source)throws ParseException | 将一个包含日期的字符串变为Date类型 |
3 | public final String format(Date date) | 将一个日期类型按照指定格式转化为字符串类 |
在实际项目中运用如图所示:
: