java时间类

Date类(util包下)
由于设计的不合理已被其他类代替
比如通过构造器创建一个时间对象,它的年比正事的年份多了1900年,月份是从0-11

(abstract)Calender类(日历类)(读音:看冷得儿)

GregorianCalendar(中文名:格里高日历类,Calender的子类)

创建格里高日历类:Calender c = Calender.getInstance();
获取当前年: c.get(Calender.YEAR);
获取当前月: c.get(Calender.MONTH); 注意:这里比真实月份少了一个月
获取当前日(两个并且相同): c.get(Calender.Date);|c.get(Calender.DAY_OF_MONTH)
时: c.get(Calender.HOUR)(12小时制)|c.get(Calender.HOUR_OF_DAY)(24小时制)
分: c.get(Calender.MINUTE);
秒: c.get(Calender.SECOND);
毫秒: c.get(Calender.MILLISECOND);
星期: c.get(Calender.DAY_OF_week);比真实星期多了1

旧的时间类存在线程不安全和设计不合理得情况,有很多坑:java8提供了新的时间类:java8关于时间系统的类都不可以被修改,
LocalDate(并没有提供公开得构造方法)(只包含年月日)(不需要格式化时间)
创建LocalDate对象(获取当前年月日):LocalDate l = LocalDate.now();
传入参数创建特定时间: LocalDate l = LocalDate.of(1999,10,12);

获得当时间分量:LocalDate l = LocalDate.now();
年: l.getYear();
月: l.getMonthValue();
日: l.getDayOfMonth();
星期: l.getDayOfWeek().getValue();

LocalTime(不包括时区的时分秒,并可以精确到纳秒)(秒毫秒微秒纳秒)
创建LocalTime对象(获取当前年月日):LocalTime l = LocalTime.now();
传入参数创建特定时间: LocalTime l = LocalTime.of(12,5,1,1);//(最好传两个时分,最多传递四个参数时分秒纳秒)

获取时间分量:
时: l.getHour();
分: l.getMinute();
秒: l.getSecond();

LocalDateTime(年月日时分秒)(并且提供了获取时区的api)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值